前提・実現したいこと
python 3.7.3
opencv 3.4.2
numpy 1.19.5
python、opencvを用いて下記のテスト画像から輪郭の座標リストを出力しようとしています。
出力されたリストが、二重かっこになっているため、この後の処理で不都合が生じています。
発生している問題・エラーメッセージ
python
1import cv2 2import numpy as np 3 4print(cv2.__version__) 5# -> 3.4.2 6print(np.__version__) 7# -> 1.19.5 8 9img = cv2.imread('test.png',0) 10__, th = cv2.threshold(img,127,255,0) 11__, cnt, hierarchy = cv2.findContours(th,cv2.RETR_EXTERNAL,cv2.CHAIN_APPROX_SIMPLE) 12 13print(len(cnt)) 14print('cnt: ', cnt)
output
1cnt [[[0 0]] 2 3 [[0 1]] 4 5 [[0 2]] 6 7 ... 8 9 [[3 0]] 10 11 [[2 0]] 12 13 [[1 0]]]
試したこと
二値化は固定のまま、findContoursの第2引数(ex:RETR_EXTERNAL)のみ他の変数に変更しましたが、変化はありませんでした。
opencvの日本語公式リファレンスを参照、また、OpenCVでcv2.findContoursするとリストが二重かっこになるを参照しましたが、解決しませんでした。
私の至らない部分が多々あるのかもしれません。
何か、お気づきの点やアドバイスなどありましたら、コメント頂けますと幸いです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/06/09 01:36
2021/06/09 11:53