一度分割した画像を再度結合したいのですが、うまくいきません。
どなたかご教授願います。
以下のようなエラーが出ます。
ValueError: need at least one array to concatenate
該当のソースコードは以下の通りです
python
1# 画像結合 comb.py 2import cv2 3import glob 4import numpy as np 5from PIL import Image 6from natsort import natsorted 7# 所定のフォルダ内にある jpg ファイルを連続で読み込んでリスト化する 8files = glob.glob(r"C:\Users\81\Pictures\YOLO 結果" + "/*.png") 9# 空のリストを準備 10d = [] 11 12# natsortedで自然順(ファイル番号の小さい順)に1個づつ読み込む 13for i in natsorted(files): 14 img = Image.open(i) # img は'JpegImageFile' object 15 img = np.asarray(img) # np.asarrayで img を ndarray に変換 16 d.append(img) # d にappend で img を追加 17 18 19# 画像の高さ方向と幅方向を結合 20img_x = np.vstack((np.hstack(d[0:3]), 21 np.hstack(d[3:6]), 22 np.hstack(d[6:9]) 23 )) 24# 色をBGR から RGB に変更 25img_x = cv2.cvtColor(img_x, cv2.COLOR_BGR2RGB) 26cv2.imshow('img_after', img_x) 27cv2.imwrite(r'C:\Users\81\Pictures\YOLO 結果\result.jpg', img_x) 28cv2.waitKey(0) 29cv2.destroyAllWindows()
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/01/25 03:37