python写透视挂_python – OpenCV透视变换给出了意想不到的结果
你的方法是正确的.指定角点的坐标时会出现问题.我不知道你是如何计算它们的,但你已经交换了你的X轴和Y轴.这反映在应用于最终图像的变换中.我发现角点是:
ptsTrap = [[[ 99. 51.]]
[[ 64. 251.]]
[[ 234. 251.]]
[[ 199. 51.]]]
ptsRect = [[[ 102. 49.]]
[[ 100. 249.]]
[[ 200. 250.]]
[[ 200. 50.]]]
从这些点中查找透视变换会得到正确的结果:
作为参考,这是我使用的代码:
import cv2
import numpy as np
def find_corners(image):
im = cv2.Canny(image,100,200)
cnt = cv2.findContours(im,cv2.RETR_EXTERNAL,cv2.CHAIN_APPROX_SIMPLE)[0]
cnt = cv2.approxPolyDP(cnt[0],5,True)
return cnt.astype(np.float32)
def main(argv):
trap = cv2.imread('trap.png',cv2.IMREAD_GRAYSCALE)
rect = cv2.imread('rect.png',cv2.IMREAD_GRAYSCALE)
ptsTrap = find_corners(trap)
ptsRect = find_corners(rect)
T = cv2.getPerspectiveTransform(ptsTrap,ptsRect)
warp = cv2.warpPerspective(trap,rect.shape[:2])
cv2.imshow('',warp)
cv2.imwrite('warp.png',warp)
cv2.waitKey()
cv2.destroyAllWindows()
python写透视挂_python – OpenCV透视变换给出了意想不到的结果相关推荐
- python写透视挂_python opencv 透视变换
可以缩小,不能放大: 只需要4个点坐标就可以了. # -*- coding: utf-8 -*- import os import numpy as np import cv2 list_path = ...
- python写透视挂_python opencv实现任意角度的透视变换实例代码
本文主要分享的是一则python+opencv实现任意角度的透视变换的实例,具体如下: # -*- coding:utf-8 -*- import cv2 import numpy as np def ...
- python写透视挂_python环境opencv实现透视变化的方法
1)构建4个点的矩阵 ,注意:透视变换需要4个点 至少三个不共线. 2)透视变换要3x3变换矩阵. 转换后直线是直线. 3)变换矩阵,输入要4个点,输出图像上需要相应的点. picSrc = np.f ...
- python写透视挂_python:Python实现数据的透视表
前言 在处理数据时,经常需要对数据分组计算均值或者计数,在Microsoft Excel中,可以通过透视表轻易实现简单的分组运算.而对于更加复杂的分组运算,Python中pandas包可以帮助我们实现 ...
- python写表格_python写入表格
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! import xlwt #导入xlwt 库 book =xlwt.workboo ...
- python数据挖掘视频_python+opencv实时视频目标检测
python+opencv实时视频目标检测 opencv环境 1.访问Python Extension Packages for Windows,下载python对应版本的opencv. 比如小编下载 ...
- python写透视挂_透视变换 任意角度 三维透视 python c++ opencv两种语言
效果图:键盘控制各个x,y,z,还有fov数值 一开始的w, h = img.shape[0:2]这里宽.高错乱,原因未知,只能这么用 python版本的: # -*- coding:utf-8 -* ...
- python写透视挂_如何用Python openCV 用透视变换的方法对图像进行矫正
.需要矫正的图片1 需要矫正的图 矫正后的结果: 矫正后的图 需要矫正的图片2 矫正前 矫正后 # import the necessary packages from imutils.perspec ...
- python写透视挂_OpenCV的Python透视变换
我有一个粗略的解决办法.您可以稍后修改它.在 我使用OpenCV中可用的鼠标处理操作裁剪给定热图中的感兴趣区域.在 (我刚才是不是说我用鼠标裁剪了这个区域?)是的,是的.在OpenCV SEE THI ...
- python写透视挂_opencv+python 透视变换
# -*- coding:utf-8 -*- import cv2 import numpy as np def rad(x): return x * np.pi / 180 def coordina ...
最新文章
- Java调用python脚本
- 代码中的各种时间格式
- 计算机配置里面没有网络选项,主编教您win10网络设置中没有wlan选项怎么办
- 《看聊天记录都学不会Python到游戏实战?太菜了吧》(8)我们开始做一个数字小游戏吧
- Oracle 建立序列以及触发器的建立
- docker pull 下载一半_Docker三个重要的基本操作,镜像,容量,仓库
- python画图包-Python 绘图包 Matplotlib Pyplot 教程
- RHEL 6.5 静默安装 oracle 11.2.4
- android游戏源码
- 推荐系统项目实战-电影推荐系统
- 单片机PWM波(AT89C51、ADC0808)
- 一个简单LEGv8处理器的Verilog实现【三】【工具使用和编程规范】
- 3S基础知识:MapInfo教程--二次开发入门
- 标准数独游戏-深搜解法
- 操作系统学习笔记十二(基于分页的虚拟存储系统)
- 用代码关闭冰刃(IceSword)
- python按某列拆分excel表格_利用Python+Pandas实现从一个excel表中提取列形成新表
- 经济基础知识(初级)【8】
- 电脑重装系统后经常蓝屏怎么解决
- iStat Menus ——mac上显示网速的软件下载地址及注册码
热门文章
- 正则表达式及常用大全
- Global.asax取绝对路径
- 无法启动调试--未安装 Silverlight Developer 运行时。请安装一个匹配版本
- 吴恩达教授机器学习课程笔记【四】- 生成学习算法(1)高斯判别分析模型
- 微信公号“架构师之路”学习笔记(五)-数据库扩展性架构设计(水平切分,秒级扩容,平滑迁移,在线表结构变更,一个大数据量多属性高并发的数据库设计等)
- 如何通过a/a中的href刷新当前界面
- 数据库增量同步开源软件
- marathon 测试
- 钉钉自定义机器人 发送文本 换行 \n无效果
- luogu P3193 [HNOI2008]GT考试