前提・実現したいこと
cv2で、将棋盤の写真を読み取り将棋盤の形にトリミングしてから、マスにそって線を引きたいです
また、駒を認識して駒の盤面配置状況をどうにかして受け取りたいです
発生している問題・エラーメッセージ
以下にソースコードを乗せています。現在は「実現させたいこと」の1行目のことを行いたいと思っています。
実行すると以下の画像のようになります。(黒い線は盤のもの)
該当のソースコード
python
1import cv2 2import numpy as np 3 4img = cv2.imread('photo.jpg') 5kernel = np.ones((2,2),np.uint8) 6gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) 7 8dilation = cv2.dilate(gray, kernel, iterations = 1) 9 10cv2.imwrite('houghlines6_edge.jpg', dilation) 11 12opening = cv2.morphologyEx(dilation, cv2.MORPH_OPEN, kernel) 13 14cv2.imwrite('houghlines3.jpg', opening) 15 16ret, thresh = cv2.threshold(opening, 127, 255, 0) 17image, contours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) 18 19img = cv2.drawContours(img, contours, -1, (0,255,0), 3) 20 21cv2.imwrite('houghlines5.jpg',img)
おわりに
説明不足な点もあると思いますがよろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。