添付の画像をグレースケール読み取り、その後、二値化して輪郭を囲む処理をコードに書きました。ですが、保存された画像を見ると画像はグレースケール化され、二値化はされたようですが、輪郭は囲われていません。なにが間違っているのでしょうか?特にエラーメッセージなどはででおりません。目的としては添付した画像1の間取りの黒い太線だけを抜き取るという事をしたいです。
何かわかる方いらっしゃいましたら、回答よろしくお願いします。
python
1import cv2 2import numpy as np 3 4 5 6 7img = cv2.imread("C:/Users/sator/Pictures/number/origin.png", 0) 8 9 10threshold = 100 11 12 13ret2, img_otsu = cv2.threshold(img, 0, 255, cv2.THRESH_OTSU) 14 15 16 17 18contours, hierarchy = cv2.findContours(img_otsu, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_NONE) 19img_contour = cv2.drawContours(img, contours, -1, (0, 255, 0), 5) 20 21cv2.imwrite("calendar_mod4.png", img_contour) 22print("end")
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/10/16 11:11