作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Opencv 和 python 的组合将此图像的透视图转换为鸟瞰图(顶 View )
删除透视图我写了这段代码
Image1 = cv2.imread('/path to image/im.jpg')
cv2.circle(Image1,(867,652),5,(0,0,255),-1)
cv2.circle(Image1,(1020,580),5,(0,0,255),-1)
cv2.circle(Image1,(1206,666),5,(0,0,255),-1)
cv2.circle(Image1,(1057,757),5,(0,0,255),-1)
pts1=np.float32([[867,652],[1020,580],[1206,666],[1057,757]])
pts2=np.float32([[448,609],[580,607],[582,724],[445,730]])
matrix=cv2.getPerspectiveTransform(pts1,pts2)
result=cv2.warpPerspective(Image1,matrix,(1920,1080))
cv2.imshow('frame',Image1)
cv2.imshow('result',result)
path = 'path'
cv2.imwrite(os.path.join(path , 'Dots.jpg'), Image1)
cv2.imwrite(os.path.join(path , 'TransImage.jpg'), result)
cv2.waitKey(0)
最佳答案
如果将其转换为正方形(并稍微更改原始点),它会变得更好:
import cv2
import numpy as np
img = cv2.imread('road.jpg')
pts = np.array([[864, 651], [1016, 581], [1205, 667], [1058, 759]], dtype=np.float32)
for pt in pts:
cv2.circle(img, tuple(pt.astype(np.int)), 1, (0,0,255), -1)
# compute IPM matrix and apply it
ipm_pts = np.array([[448,609], [580,609], [580,741], [448,741]], dtype=np.float32)
ipm_matrix = cv2.getPerspectiveTransform(pts, ipm_pts)
ipm = cv2.warpPerspective(img, ipm_matrix, img.shape[:2][::-1])
# display (or save) images
cv2.imshow('img', img)
cv2.imshow('ipm', ipm)
cv2.waitKey()
关于python - 将透视图转换为俯 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57439977/
我正在使用 SideMenu 构建一个简单的 View 。因此,如果我尝试单击它,我可以看到该选项,但侧面菜单位于所有项目下方,而不是所有项目上方。 这是ViewController的代码: [代码]
我是一名优秀的程序员,十分优秀!