前提・実現したいこと
python+opencvで開発を行っています。
画像中の物体の輪郭を抽出して、抽出した輪郭に対して外接矩形を入れたいのですが、
その外接矩形に赤色をつけたいです。
現状、黒色の外接矩形しか表示されません。
発生している問題・エラーメッセージ
輪郭を抽出後、外接矩形を表示したところグレースケールで表示されてしまう。
該当のソースコード
python
1 2import cv2 3 4def main(): 5 src = cv2.imread('C:/Users/ito/Anaconda3/envs/Sample/pic/IMG_0050.jpg') 6 7 height, width, channels = src.shape 8 image_size = height * width 9 10 src_gray = cv2.cvtColor(src, cv2.COLOR_RGB2GRAY) 11 12 ret, dst = cv2.threshold(src_gray, 122, 255, cv2.THRESH_BINARY) 13 14 dst, contours, hierarchy = cv2.findContours(dst, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) 15 16 for i, contour in enumerate(contours): 17 area = cv2.contourArea(contour) 18 if area < 500: 19 continue 20 21 if image_size * 0.99 < area: 22 continue 23 24 x,y,w,h = cv2.boundingRect(contour) 25 rec = cv2.rectangle(dst, (x,y),(x+w,y+h),(0,0,255), 2) 26 27 cv2.imwrite('C:/Users/ito/Anaconda3/envs/Sample/pic/sampplepgm.png', rec) 28 29if __name__ == '__main__': 30 main() 31
補足情報(FW/ツールのバージョンなど)
windows7 professional
python3.6.5
opencv3.3.1
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/19 07:53