質問するログイン新規登録

回答編集履歴

2

修正

2020/09/01 11:27

投稿

tiitoi
tiitoi

スコア21960

answer CHANGED
@@ -14,4 +14,34 @@
14
14
  ret, data = cv2.imencode(".jpg", img, [cv2.IMWRITE_JPEG_QUALITY, 90])
15
15
  # binary -> base64 ascii
16
16
  base64_ascii = binascii.b2a_base64(data).decode('ascii')
17
- ```
17
+ ```
18
+
19
+ ## base64 に変換できていることを確認したコード
20
+
21
+ Jupyter Notebook 上にインライン画像として img タグ表示して確認
22
+
23
+
24
+
25
+ ```python
26
+ import cv2
27
+ import binascii
28
+ from IPython.display import HTML, display
29
+
30
+ # jpg の場合
31
+ img = cv2.imread("sample.jpg")
32
+ ret, jpg_data = cv2.imencode(".jpg", img, [cv2.IMWRITE_JPEG_QUALITY, 90])
33
+ base64_ascii = binascii.b2a_base64(jpg_data).decode("ascii")
34
+
35
+ img_tag = f'<img src="data:image/jpeg;base64,{base64_ascii}">'
36
+ display(HTML(img_tag))
37
+
38
+ # png の場合
39
+ img = cv2.imread("bird.png")
40
+ ret, png_data = cv2.imencode(".png", img)
41
+ base64_ascii = binascii.b2a_base64(png_data).decode("ascii")
42
+
43
+ img_tag = f'<img src="data:image/png;base64,{base64_ascii}">'
44
+ display(HTML(img_tag))
45
+ ```
46
+
47
+ ![イメージ説明](17894fc7ebb8c74b0e1fffaf6616bbb7.png)

1

修正

2020/09/01 11:27

投稿

tiitoi
tiitoi

スコア21960

answer CHANGED
@@ -11,7 +11,7 @@
11
11
  img = cv2.imread("sample.jpg")
12
12
 
13
13
  # ndarray -> binary
14
- ret, data = cv2.imencode(".jpg", img, [int(cv2.IMWRITE_JPEG_QUALITY), 90])
14
+ ret, data = cv2.imencode(".jpg", img, [cv2.IMWRITE_JPEG_QUALITY, 90])
15
15
  # binary -> base64 ascii
16
16
  base64_ascii = binascii.b2a_base64(data).decode('ascii')
17
17
  ```