300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > python opencv点击4点进行透视变换

python opencv点击4点进行透视变换

时间:2018-07-24 10:54:20

相关推荐

python opencv点击4点进行透视变换

代码

将非正对角度拍摄的某个物体的图像变为正对物体的角度拍摄的图像,代码很简单

import cv2import numpy as npimg = cv2.imread('1.jpg') # 输入图像p_list = [] # 左上,右上,左下,右下顺序点击dst_point = (1000, 1000) # 变换目标大小img2 = img.copy()def capture_event(event, x, y, flags, params):if event == cv2.EVENT_LBUTTONDOWN:# create a circle at that position# of radius 30 and color greeencv2.circle(img, (x, y), 10, (0, 0, 255), -1)cv2.imshow("original_img", img)p_list.append([x, y])if len(p_list) == 4:pts1 = np.float32(p_list)pts2 = np.float32([[0, 0], [dst_point[0], 0], [0, dst_point[1]], [dst_point[0], dst_point[1]]])dst = cv2.warpPerspective(img2, cv2.getPerspectiveTransform(pts1, pts2), dst_point)cv2.namedWindow("result_img", cv2.WINDOW_NORMAL)cv2.imshow("result_img", dst)cv2.imwrite('2.jpg', dst) # 输出图像cv2.namedWindow("original_img", cv2.WINDOW_NORMAL)cv2.imshow("original_img", img)cv2.setMouseCallback("original_img", capture_event)cv2.waitKey(0)

结果图

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。