摘要: 借助官方离线文档中的samples来理解VideoWriter 文档位置:samples/cpp/tutorial_code/videoio/video-write/video-write.cpp 注:需要提前下载 openh264-1.8.0-win64.dll,然后放在Release文件夹下 , 阅读全文
posted @ 2024-03-13 20:00 VanGoghpeng 阅读(36) 评论(0) 推荐(0) 编辑
摘要: 此次我们将一张图像转灰度后再进行灰度取反,即黑的变白的,白的变黑的,所以我们需要获取每个像素点上的灰度级,cv中提供了一个函数at,但是这个函数还有11个重载函数,太多了,我们只用这次需要用到的,即通过读取像素点的位置来获取灰度级。 ◆ at() [3/12] template<typename _ 阅读全文
posted @ 2024-03-04 20:14 VanGoghpeng 阅读(38) 评论(0) 推荐(0) 编辑
摘要: 相较于之前的Python下的opencv读取视频流并展示,C++下有一些不同需要配置 1、opencv\build文件夹的bin文件夹下的opencv_videoio_ffmpeg490_64.dll需要拷贝至工程文件中,或者将bin路径写入环境变量也可。(如果没有这个dll文件的话,可能会出现一直 阅读全文
posted @ 2024-02-29 20:50 VanGoghpeng 阅读(64) 评论(0) 推荐(0) 编辑
摘要: 记录一下Visual Studio配置OpenCV过程以及出现的问题 本机环境: 1、Windows10 2、Visual Studio 2022 配置步骤: 1、下载OpenCV(Releases · opencv/opencv · GitHub)在GitHub上下载最新的版本 2、双击打开,然后 阅读全文
posted @ 2024-02-24 04:28 VanGoghpeng 阅读(30) 评论(0) 推荐(0) 编辑
摘要: 通过上一篇博客,我们成功将有角度的图片进行“摆正”,接下来我们来提取图片中的文字。 我们使用Tesseract来处理图片并提取文字,相关下载安装请参考:Python下Tesseract Ocr引擎及安装介绍 - 黯然销魂掌2015 - 博客园 (cnblogs.com) 同时我们需要下载第三方Lib 阅读全文
posted @ 2024-01-12 20:01 VanGoghpeng 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 对于OCR技术在处理有角度有偏差的图像时是比较困难的,而水平的图像使用OCR识别准确度会高很多,因为文本通常是水平排列的,而OCR算法一般会假设文本是水平的。 针对上述情况,所以我们在处理有角度的图象时,需要将图像“摆正”,将使用到getPerspectiveTransform方法和warpPers 阅读全文
posted @ 2024-01-08 21:50 VanGoghpeng 阅读(369) 评论(0) 推荐(0) 编辑
摘要: 接着练手图像处理例子 抛开网上截图进行OCR识别,更多的图源来自于我们的手机,相机等等设备,而得到的图片都并非是板正的,大多随手一拍的图源都是带有角度的,所以我们需要先将图像进行摆正。 首先先对图像进行预处理,上代码: 1 def edge_detect(image): 2 gray = cv2.c 阅读全文
posted @ 2024-01-02 20:41 VanGoghpeng 阅读(162) 评论(0) 推荐(1) 编辑
摘要: 相较于BarCode,QRCode有明显的特征区域,也就是左上角、右上角、左下角三个”回“字区域,得益于hierarchy中,父子关系的轮廓是连续的(下标),所以这个时候我们就可以通过cv2.findContours()返回的hierarchy来进行定位。 我们直接上代码 1 import cv2 阅读全文
posted @ 2023-12-28 21:16 VanGoghpeng 阅读(417) 评论(0) 推荐(0) 编辑
摘要: 在打算自己实现二维码的定位的时候,看到了相关博文的关于cv2.findContours返回的层级信息来定位三个“回”字从而达到定位二维码的目的,但是返回的hierarchy中的层级信息分别对应的是哪个轮廓却困扰了许久,查阅了很多资料最后还是自己手动找出了清晰的规律。 关于hierarchy返回的每一 阅读全文
posted @ 2023-12-26 20:40 VanGoghpeng 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 根据上一篇博客可知,单纯的通过求取最大面积而进行定位的局限性,因此我们接下来将通过cv2.moments()和cv2.HuMoments()这两个方法来在更复杂的环境中去找到我们的目标区域。 cv2.moments(): 参数: array:表示输入图像的单通道数组。通常是灰度图像,可以是8位或浮点 阅读全文
posted @ 2023-12-21 23:42 VanGoghpeng 阅读(170) 评论(0) 推荐(0) 编辑