Opencv+Python 基于仿射变换进行图像倾斜矫正 实例练习 (超详细备注)

主要流程:

1.首先得到灰度图像
2.对灰度图像进行二值化
3.然后找一个最小矩形框住对象轮廓(opencv中有相应的函数)
4.这个最小矩形的函数会返回一个角度
5.我们利用这个角度得到一个旋转的矩形(仿射变换所需要的)
6.使用仿射变换得到矫正后的图像

1.得到灰度图像

//读取图像
src= cv.imread('imageTextR.png')
(h,w)=src.shape[:2]
//记录图像宽高,后面会用
//cv.imshow('src',src)  
//cvtColor函数用于转换色彩空间,将图像转换为GRAY灰度图像
gray=cv.cvtColor(src,cv.COLOR_BGR2GRAY)

我们需要矫正的图像
这是我们需要矫正的图像

2.对灰度图像进行二值化

ret,binary = cv.threshold(gray,0,255,cv.THRESH_BINARY_INV|cv.THRESH_OTSU)
#由于文本是黑底白字的,我们需要让背景是黑色的,所以我们在传入参数的时候需要使用cv.THRESH_BINARY_INV 加上_INV使二值图反转

二值图
这是二值图

3.找一个最小矩形框住对象轮廓

coords=np.column_stack(np.where(binary
  • 37
    点赞
  • 192
    收藏
    觉得还不错? 一键收藏
  • 13
    评论
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值