前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >图像校正

图像校正

作者头像
裴来凡
发布于 2022-05-28 08:34:31
发布于 2022-05-28 08:34:31
63900
代码可运行
举报
运行总次数:0
代码可运行
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import cv2
img=cv2.imread('C:/Users/xpp/Desktop/Lena.png',cv.IMREAD_ANYCOLOR)#原始图像
M1=20
M2=50
M3=90
rst1=cv2.logPolar(img,(251,249),M1,cv.WARP_FILL_OUTLIERS)#笛卡儿坐标转极坐标
rst2=cv2.logPolar(img,(251,249),M2,cv.WARP_FILL_OUTLIERS)#笛卡儿坐标转极坐标
rst3=cv2.logPolar(img,(251,249),M3,cv.WARP_FILL_OUTLIERS)#笛卡儿坐标转极坐标
cv.imshow("img",img)
cv.imshow("rst1",rst1)
cv.imshow("rst2",rst2)
cv.imshow("rst3",rst3)
cv2.waitKey()
cv2.destroyAllWindows()

算法:图像校正是通过坐标变换来校正图像中的圆形物体或被包含在圆环中的物体。

极坐标和笛卡儿坐标的一一对应关系:

其中,(θ,r)表示极坐标,

表示笛卡尔坐标。

dst=cv2.linearPolar(src, center, maxRadius, flags)

  • src表示输入图像
  • center表示极坐标变换中心
  • maxRadius表示极坐标变换最大距离
  • flags表示插值方法

dst=cv2.logPolar(src, dst, center, M, flags)

  • src表示输入图像
  • center表示极坐标变换中心
  • M表示极坐标变换系数
  • flags表示转换方向

注意:函数linearPolar()有两个缺点,第一是变换时的步长不可控,第二是只能对整个圆进行变换。M的值越大,图像经过变换后的信息越多。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-03-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 图像处理与模式识别研究所 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验