OpenCV で消失点を探してみる
直線抽出して、延長してみました
%matplotlib inline import cv2 import numpy as np import matplotlib.pyplot as plt # matplotlibの描画系 #Gray Scaleで画像読み込み img = cv2.imread('IMG160806-164620.JPG') #img = cv2.imread('168-216.jpg') gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) edges = cv2.Canny(gray,50,100,apertureSize = 3) minLineLength = 100 maxLineGap = 10 lines = cv2.HoughLinesP(edges,1,np.pi/180,100,minLineLength,maxLineGap) for line in lines: for x1,y1,x2,y2 in line: dx = x2-x1 dy = y2-y1 #cv2.line(img,(x1,y1),(x2,y2),(0,255,0),5) cv2.line(img,(x1 - (dx*200),y1 - (dy*200)),(x1 + (dx*200),y1 + (dy*200)),(0,255,0),2) show_img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) plt.imshow(show_img) #表示
交わったところを探してみればいいのかな。
http://kamiwo-koete.hatenablog.jp/entry/2014/12/23/193018
http://mf-atelier.sakura.ne.jp/mf-atelier/modules/tips/program/algorithm/a1.html
moremagic
2016-08-22