前提・実現したいこと
pythonのcv2を使って画像のエッジを検出するプログラムを作りました。
検出したエッジを.dxfの形式で出力したいのですが、ezdxfを使って検出したエッジを作図する方法を教えて頂きたいです。
該当のソースコード
コード
import cv2
import numpy as np
import matplotlib.pyplot as plt
img = cv2.imread("/Users/mutaguchitakuma/Desktop/original.jpg")
img2 = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
plt.imshow(img2)
plt.show()
青の領域のマスクから青じゃない部分を取得
blue_min = np.array([140, 0, 0], np.uint8)
blue_max = np.array([255, 255, 255], np.uint8)
mask_blue = cv2.inRange(img2, blue_min, blue_max)
img3 = cv2.bitwise_not(mask_blue)
plt.imshow(cv2.cvtColor(mask_blue, cv2.COLOR_GRAY2RGB))
輪郭抽出
_, contours, hierarchy = cv2.findContours(img3, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
contours = [np.squeeze(cnt, axis=1) for cnt in contours]
size = img.shape
h = size[0]
w = size[1]
imgnew = np.zeros((h, w, 3), np.uint8)
img4 = cv2.drawContours(imgnew, contours, 1, (0,255,0), 3)
print("contours=",len(contours), "hierarchy=",len(hierarchy) )
print(contours[1])
plt.imshow(img4)
plt.show
cv2.imwrite('out.jpg', img4)

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/11/15 23:21