やりたいこと
以下の画像Python.pngの輪郭を抽出したい
環境はwindows10のpycharmでコードを書いています。
opencv4.1だったとおもいます。
実際に書いたコード
python
1import cv2 2 3img_path1 = r"C:\Users\hirayama\Desktop\python_test\Python.png" 4img = cv2.imread(img_path1,1) 5 6img_m = cv2.medianBlur(img,21) 7 8 9#画像の大きさ1 10heigth = img.shape[0] 11widh = img.shape[1] 12img = cv2.resize(img_m,(int(widh*0.1),int(heigth*0.1))) 13 14#色の反転 15image2 = cv2.bitwise_not(img) 16 17 18#グレースケールに変換 19gray = cv2.cvtColor(image2, cv2.COLOR_BGR2GRAY) 20 21for y in range(len(gray)): 22 for x in range(len(gray[y])): 23 if gray[y][x] <= 50: 24 gray[y][x] = 0 25 26#輪郭抽出する 27contours, hierarchy = cv2.findContours(gray, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) 28img2 = cv2.drawContours(img,contours,-1, (0,255,0),2) 29 30cv2.imshow("img", img2) 31cv2.waitKey(0) 32
実行結果
のようになってしまってうまく黄色の部分が輪郭をとれていません。。。
###解決したいこと
黄色の部分も含めて輪郭抽出が出来るコードを教えてほしいです。
また、コードに不備がありましたらレビューしていただきたいです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/10/31 05:24
2019/10/31 05:25
2019/10/31 05:30
2019/10/31 05:31
2019/10/31 05:44