From sztu 自动化专业的小菜鸡。
本系列将介绍计算机视觉的处理图像基础,基于python的opencv。
1.提取图片中的关键信息emmm,这一章节比较重点,它可以提取散乱图片里面的一张,并且将其平整化,这里可以应用到车牌的识别,文案的识别等。那么,话不多说,上代码!
import cv2
import numpy as np
img = cv2.imread("Resources/cards.jpg")
width,height = 250,350#定义宽,高
pts1 = np.float32([[111,219],[287,188],[154,482],[352,440]])#找到对应的点位
pts2 = np.float32([[0,0],[width,0],[0,height],[width,height]])#切割找到对应的点
matrix = cv2.getPerspectiveTransform(pts1,pts2)#同位转化
imgOutput = cv2.warpPerspective(img,matrix,(width,height))
cv2.imshow("iMAGE",img)
cv2.imshow("OUTPUT",imgOutput)
cv2.waitKey(0)
可以看到,这里用了python的两个库,一个是opencv,还有一个是numpy,这也是我们比较常用的两个库。那么,引用完之后就到了读取图片的阶段,这里,朋友们可以自行选择自己电脑上的一张图片来操作,然后我们需要定义它的宽和高。接着就是在图片里面找到它的点位,那么这里博主已经提前找好了对应的点位,直接应用了(至于如何找点位,可以采用图像切割的手法获取)。之后用一个getPerspectiveTransform函数,即可切割出来,之后就是简单的结果展示环节。
运行结果:
2.总结可以看到output就是我们所截取的图片,这章节大家下去后自己一定要试着打一打哦~



