Opencv中WarpPerspective投影矫正的使⽤--透视变换
3p双飞⽅法⼀:在当前⼯作中其实很多时候需要⽤⼿机拍摄⼀些显⽰器、或者其他证件或者是电视的画⾯当作素材写到报告中给到领导或者客⼈,图像要求⽐较严苛,但有时候⾃⼰⼿抖加脑⼦抽了拍了图⽚回去写报告才发现:wtf这tm我当时拍的啥玩意,也没法再重排,这时候其实可以利⽤opencv中的WarpPerspective 投影变换对图像进⾏矫正。
⽅法⼆:另外⼀个对⽤户要求稍微⾼点,⼿机⾥有个⽬标地形矩形框对象功能。塑料怎么做出来的
基础知识这篇博主介绍的很详细完整:blog.csdn/guduruyu/article/details/72518340
下⾯进⾏实例演⽰
谢贤为什么叫四哥
/*以下代码只展⽰变换部分,其中ImageIn为输⼊图像,ImageOut为输出图像*/ //变换前的四点
var srcPoints = new Point2f[] {
new Point2f(5, 648),
new Point2f(751, 643),
英语作业批改评语
无可奈何意思new Point2f(184, 280),
new Point2f(589, 272),
qq怎么群发};
//变换后的四点
var dstPoints = new Point2f[] {
new Point2f(0, 703),
new Point2f(524, 703),
new Point2f(0, 0),
new Point2f(524, 0),小英雄雨来
};
//根据变换前后四个点坐标,获取变换矩阵
Mat mm = Cv2.GetPerspectiveTransform(srcPoints, dstPoints);
//进⾏透视变换
Cv2.WarpPerspective(ImageIn, ImageOut, mm, GrayImage.Size());
下⾯是输出结果:
倒三角眼
变换前:红点为我选取的点,变换后:红点为原来变换后的点