C++
李伯爵的指间沙
这个作者很懒,什么都没留下…
展开
-
RAW原始数据的彩色增强算法实验结果
RAW原始数据的彩色增强算法研究原创 2022-01-11 17:34:50 · 1435 阅读 · 0 评论 -
(使用工具)Matlab转C++
第一步:mex -setup C++coder第二步:MATLAB Coder欢迎界面然后点击上图中圆圈处,选择我们建立的函数文件,得到如下图选择建立的main.m文件,得到如下图在用matlab2016b生成代码时,老是出现这个问题:This assignment writes a 'double' value into a 'uint8' type. Code generation does not support changing types t原创 2020-09-24 11:22:01 · 2478 阅读 · 0 评论 -
C++ opencv连续旋转 图像变小问题
问题:在连续旋转一个角度的时候,图像一直会被压缩变小。Problem: The image is compressed and reduced all the time when it is rotated continuously by an Angle.原因:由于我每次操作的图像是上一次旋转后的结果后,矩阵运算后,会有一定的误差。修改为每次只操作原图。Reason: Since the image I operate each time is the result of the last原创 2020-08-07 11:22:13 · 471 阅读 · 0 评论 -
2020年8月5日21:35:43 图像左右上下翻转
代码如下:功能比较简单,没有什么难度,基本思路是从数据中获取图像ID,读取进行旋转镜像操作。需要主要的是,imread(ImagePath[0].toLocal8Bit().toStdString()),因为路径有中文,会出现读取不到的现象。The code is as follows: the function is relatively simple, there is no difficulty, the basic idea is to get the image ID from the da.原创 2020-08-05 22:17:54 · 418 阅读 · 0 评论 -
2020年8月5日10:43:11 notes(QT singal and slot)
在信号连接的时候写成了一下格式:connect(ui->Button_contrarotate_270, SIGNAL(clicked()), this, SLOT(OnRoateContrarotate_270));问题:QObject::connect: Parentheses expected, slot MainWindow::OnRoateContrarotate_270 in mainwindow.cpp:114QObject::connect: (sender name:.原创 2020-08-05 10:45:18 · 169 阅读 · 0 评论 -
C++ Image roate
今天简单的实现一个通过按键控制图像旋转的功能。Today's simple implementation of a button control image rotation function.。通过拉动滑动条实现图像的旋转,但是直接拉动滑动条,可以实现图像旋转,但是比较卡顿。The image rotation can be achieved by pulling the slider, while the image rotation can be achieved by pulling原创 2020-08-03 22:27:19 · 830 阅读 · 0 评论 -
RANSAC 直线拟合
result:code:#include "stdafx.h".#include <opencv2\opencv.hpp>#include <iostream>#include <ctime>using namespace std;using namespace cv;//生成[0,1]之间符合均匀分布的数double uniformRandom(void){ return (double)rand() / (double)RAND_.原创 2020-08-01 22:03:34 · 2720 阅读 · 0 评论 -
C++ QT 正则表达式---->识别结果的过滤
元字符 描述 \ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个向后引用、或一个八进制转义符。例如,“\\n”匹配\n。“\n”匹配换行符。序列“\\”匹配“\”而“\(”则匹配“(”。即相当于多种编程语言中都有的“转义字符”的概念。 ^ 匹配输入字符串的开始位置。如果设置了RegExp对象的Multiline属性,^也匹配“\n”或“\r”之后的位置。 $ ...原创 2020-07-31 14:30:32 · 967 阅读 · 0 评论 -
QT and QString
参考:https://www.xiuzhanwang.com/a1/Cyuyan/102.html介绍QString使用正则操作的接口。contains正则表达式rx是否与字符串中的某个地方匹配,匹配返回true,否则返回false。bool contains(const QRegExp &rx) constbool contains(QRegExp &rx) constbool contains(const QRegularExpression &re) co原创 2020-07-30 22:11:28 · 190 阅读 · 0 评论 -
C++ opencv SVM
C++ SVM#include "stdafx.h"#include <iostream>#include <opencv.hpp>using namespace cv;using namespace cv::ml; //svm包含在ml里面int main(){ int width = 512, height = 512; Mat image = Mat::zeros(height, width, CV_8UC3); //CV_8UC3 无符号整型数据.原创 2020-07-29 22:39:48 · 958 阅读 · 0 评论 -
C++ opencv SOBEL梯度
codeint main(int argc, int argv){ Mat SrcImage = imread(".//01-3.jpg"); //第一步:灰度化 Mat gray; if (SrcImage.channels() == 3) { cvtColor(SrcImage, gray, CV_BGR2GRAY); } else { gray = SrcImage; } Mat graysrc = gray.clone(); ///...原创 2020-07-27 21:11:16 · 1088 阅读 · 0 评论 -
qt QTableWidget stylesheet
自己写了一个函数,封装QTableWidget的样式,根据自己的需求进行修改单元格的文字颜色、背景颜色等。I wrote a function to encapsulate the style of QTableWidget and modify the text color and background color of the cell according to my own requirements./**********************************************原创 2020-07-22 10:13:14 · 2140 阅读 · 0 评论 -
C++ opencv and QT5.9.8 use CRNN to OCR
实现了C++调用CRNN模型,实现OCR识别。 C++ calls CRNN model and OCR recognition. CRNN是一种卷积循环神经网络结构,用于解决基于图像的序列识别问题,特别是场景文字识别问题。CRNN is a kind of convolution loop neural network structure, which is used to solve the sequence recognition problem based on image, es..原创 2020-07-21 17:14:27 · 1430 阅读 · 5 评论 -
C++ QT(Draw the curve from the import file)
通过加载文件,解析文件中数据,并根据解析的数据进行绘制曲线。Draw the curve by importing the file by loading the file, parsing the data in the file, and drawing the curve according to the parsed data.importDatasetvoid MainWindow::OnImportDataset(){ QString filepath = QFileDi.原创 2020-07-20 22:18:46 · 177 阅读 · 0 评论 -
save log(C++ qt)
日志文件,可以作为程序异常的定位查询。通过C++ qt实现日志的记录存储。Log files, which can be used as location queries for program exceptions.Log storage is realized through C++ qt.#ifndef SAVE_LOG_H#define SAVE_LOG_H#include <QFile>#include <QString>#include <QText原创 2020-07-19 21:29:01 · 1153 阅读 · 0 评论 -
C++ opencv minarearect
今天,根据需求实现了图像的最小外接矩形,实现结果图如下:Today, the minimum enclosing rectangle of the image is realized according to the requirements. The realization result is as follows:至于,我实现的结果图为什么是下面的这种形式,具体不做解释,另做他用。As for why the result graph I realized is in the followi.原创 2020-07-17 21:51:32 · 6141 阅读 · 0 评论 -
C++opencv Partial table of cell segmentation extraction
对于我研究的局部表格区域,参考下图: For the partial table area I studied, please refer to the following figure: 对于不同分辨率的图像,进行表单元格区域的分割提取,文字区域的定位有很多方法,这里我写了一种基于投影统计的处理方法。仅仅供参考。For images with different resolutions, there are many methods for segmentation and extra.原创 2020-07-16 21:52:44 · 148 阅读 · 0 评论 -
C++ SQLite(basic knowledge)
SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。SQLite第一个Alpha版本诞生于2000年5月。原创 2020-07-14 22:20:06 · 281 阅读 · 0 评论 -
C++ QT TXT2PDF
在CSDN博客上,你可以看到很多关于QT 导出PDF报告的相关技术文档。今天,我实现了在PDF中生成多页报表。On the CSDN blog, you can see a lot of technical documentation about QT exporting PDF reports.Today, I implemented generating multi-page reports in PDF.首先,读取*.log日志文件,通过代码生成PDF文件。先看看结果: First,原创 2020-07-13 22:01:23 · 308 阅读 · 0 评论 -
C++ opencv Horizontal projection and vertical projection
投影简单来说就是将图像中的像素进行横向以及纵向的综合计数处理。Projection is simply to count the pixels in the image horizontally and vertically.我需要要做的就是对投影进行进一步处理,分析得到自己想要的数据以及边界线阈值。What I need to do is to further process the projection and analyze it to get the data I want and the原创 2020-07-10 20:46:39 · 645 阅读 · 0 评论 -
C++ Opencv binarization thinning and bone processing
所谓细化就是经过一层层的剥离,从原来的图中去掉一些点,但仍要保持原来的形状,直到得到图像的骨架。骨架,可以理解为物体的中轴,例如一个长方形的骨架是它的长方向上的中轴线;正方形的骨架是它的中心点;圆的骨架是它的圆心,直线的骨架是它自身,孤立点的骨架也是自身。得到了骨架,就相当于突出物体的主要结构和形状信息,去除了多余信息,根据这些信息可以实现图像上特征点的检测,如端点,交叉点和拐点。Thinning is the process of peeling off some points from the or原创 2020-07-08 19:59:15 · 555 阅读 · 0 评论 -
Use C language to achieve object-oriented programming OOP
参考:https://mp.weixin.qq.com/s?__biz=MzI5NzM5MjMxNw==&mid=2247486893&idx=1&sn=58b9d99db36e79b8660baab92e0c2d94&chksm=ecb48c7fdbc3056954ce2255a1d7f5c94a31ab16abfc3186eab3b0387335e57ad072ceb9aa7e&mpshare=1&scene=24&srcid=&share原创 2020-07-06 19:27:33 · 210 阅读 · 0 评论 -
C++ opencv Table Processing
今天,实现了一个功能。主要实现以下功能:(1)首先进行直线检测(2)HOUGH重构横向线段(3)基于重构横向线段的纵向线段处理(4)掩膜处理 Today, a function is implemented.The main functions are as follows: (1) Straight line detection shall be carried out first (2) Reconstruction of transverse line se.原创 2020-07-05 17:34:49 · 309 阅读 · 0 评论 -
C++ opencv cross structural element
1.形态学运算与结构元素形态学运算是针对二值图像依据数学形态学(Mathematical Morphology)的集合论方法发展起来的图像处理方法。数学形态学起源于岩相学对岩石结构的定量描述工作,近年来在数字图像处理和机器视觉领域中得到了广泛的应用,形成了一种独特的数字图像分析方法和理论。结构元素可以简单的定义为像素的组合,在对应的像素上定义了原点(也称锚点)。形态学滤波器的应用过程就是利用这个结构元素探测图像中每个像素的操作过程。把某个像素设为结构元素的锚点后,结构元素和图像重叠部分的像素集合就是特原创 2020-07-02 21:59:04 · 793 阅读 · 0 评论 -
C++ open the camera
#include "stdafx.h"#include <opencv2/imgcodecs.hpp>#include <opencv2/highgui.hpp>#include "windows.h"#include "dshow.h"#include <iostream>#pragma comment(lib, "strmiids.lib")#pragma comment(lib, "quartz.lib")using namespace cv;.原创 2020-06-23 21:14:56 · 488 阅读 · 0 评论 -
C++ opencv and ROI Mask fusion
指定区域的融合,通过一个图像掩膜(mask),直接将插入处的像素设置为P0VerticalImage图像的像素值。The fusion of the specified region sets the insertion pixel directly to the pixel value of the P0VerticalImage image through an image mask. //====================================================.原创 2020-06-21 22:04:02 · 631 阅读 · 0 评论 -
C++ opencv block it to calculate the variance and the mean
针对原始图像进行分块,计算求解分块区域的均值和方差。对分块区域进行分块阈值处理(后续处理,值得研究的)The mean value and variance of the block region are calculated by partitioning the original image.Partitioning threshold processing for partitioned regions (subsequent processing, worthy of study)void.原创 2020-06-20 22:15:39 · 239 阅读 · 0 评论 -
C++ opencv Erode and Dilate
Erode and Dilate图像的像素值越大的地方,图像越亮,而腐蚀和膨胀就是求图像像素局部最小值和局部最大值的过程膨胀(dilate):就是对图像的高亮部分进行膨胀,相当于高亮部分的领域扩张腐蚀(erode):就是对图像的高亮部分的侵蚀,也就是经过腐蚀操作之后图像的高亮部分变得更少The larger the pixel value of the image, the brighter the image, and corrosion and expansion is the proc原创 2020-06-19 22:37:08 · 1049 阅读 · 0 评论 -
C++ opencv and region growing to extract the table
1、理论基础区域生长算法的基本思想是将有相似性质的像素点合并到一起。对每一个区域要先指定一个种子点作为生长的起点,然后将种子点周围领域的像素点和种子点进行对比,将具有相似性质的点合并起来继续向外生长,直到没有满足条件的像素被包括进来为止。这样一个区域的生长就完成了。这个过程中有几个关键的问题:a> 给定种子点(种子点如何选取?)种子点的选取很多时候都采用人工交互的方法实现,也有用其他方式的,比如寻找物体并提取物体内部点作为种子点。b> 确定在生长过程中能将相邻像素包括进来的准则原创 2020-06-18 22:31:16 · 491 阅读 · 0 评论 -
C++ opencv Processing multiple images(批量处理图像)
今天,需要对文件夹下的图像进行批量处理,实现这部分功能。对文件夹下的图像进行批量处理,实现数据集的制作。本文通过特殊处理,加强数据集的局部有效信息,便于深度学习更好的训练识别。Today, the need for the folder under the image batch processing, to achieve this part of the function.The image under the folder for batch processing, to achieve the原创 2020-06-17 20:20:04 · 817 阅读 · 0 评论 -
QT 、tesseract and Block thread parallel computation(分块线程并行计算)
对于多线程加速,网络博客上有很多种方法,openmp 和QtConcurrent都能够实现一定的加速,然而我使用相应的函数并没有想象中那么友好。准确来说,不止我一个遇到了这样的问题,加速效果不明显等等。还是直接写代码加速的效果明显。采用thread编写多线程,重写run函数。There are many ways to speed up multiple threads on the web blog. Both OpenMP and QtConcurrent are capable of some s原创 2020-06-13 09:23:48 · 475 阅读 · 0 评论 -
C++ tesseract and CRNN Time consuming test
之前提及到的C++与Python之间数据交互时花费时间较大,暂定使用tesseract实现字符的识别。但是由于tesseract对中文的识别效果不好,一直在研究字符识别准确率的问题,现在中文数字字母的识别准确率可以到95%以上,基本可以媲美深度学习的识别准确率了。之前使用Python的一个流程时间是16s,现在一个流程5s,满足需求。值得继续研究。As mentioned before, data interaction between C++ and Python takes a lot of tim原创 2020-06-12 09:24:10 · 336 阅读 · 0 评论 -
C++ QT +tesseract+opencv3.1 problems
成功的提升了汉字的识别准确率(感谢老师的帮忙,现在汉字识别准确率基本可以到95%以上了),但是当我在QT中导入文件: I successfully improved the recognition accuracy of Chinese characters (thanks to the teacher's help, the recognition accuracy of Chinese characters can be more than 95% now), but when I import.原创 2020-06-11 15:20:57 · 596 阅读 · 0 评论 -
Solve the single data: common data enhancement method summary(数据集扩充)
参考文献:https://mp.weixin.qq.com/s?__biz=MzI5MDUyMDIxNA==&mid=2247497597&idx=3&sn=33d62f4f12bb0985185409b1ec6b7aae&chksm=ec1c1a84db6b939251ca7949fc4d9ad8f2a6135fd52f934ead485c9b6566f4a0ab3e37ada363&mpshare=1&scene=24&srcid=&...原创 2020-06-09 22:39:35 · 332 阅读 · 0 评论 -
Multi-Focus Images Fusion
今天,试一试----->基于引导滤波和均值滤波的多聚焦图像融合---->实现。实现异源图像的融合。Today, try -> multi-focus image fusion based on guided filtering and mean filtering -> implementation.Realize the fusion of different images.看看结果:result:解释:对于代码的实现,其实底层就是一个引导滤波器..原创 2020-06-08 22:36:37 · 1474 阅读 · 1 评论 -
C++ opencv table Cell extract
对于表单元的提取,通过对前面博客中对求得的MASK图像使用与操作,得到joints图像,通过对joints图像进行处理即可得到对应表交点的坐标,通过对坐标处理实现表单元的分割处理。我使用的是Vector来实现坐标的存储,通过erase方法实现相同值的提取,通过阈值处理实现表点坐标的提取。进行实现表单元的分割提取。For the extraction of form elements, I used and operated MASK images obtained in the previous blo原创 2020-06-07 22:07:02 · 268 阅读 · 0 评论 -
C++ opencv Table text extraction
https://blog.csdn.net/m0_37690102/article/details/106532157原创 2020-06-04 22:31:26 · 346 阅读 · 1 评论 -
C++ opencv and Text Region extraction
今天,项目中出现了文字定位的bug,如下图片: Today, there is a bug with text location in the project, as shown in the picture below: 我需要将文字区域1和文字区域2进行分割,之前用的方法是,Rect rect_Title(0, 0,(int)gray.cols/2, rect_y - 5);这种方法必须满足文字区域1的宽度小于一半的输入图片宽度。今天遇到了文字区域2的内容在【0,(int)gray.col原创 2020-06-03 21:11:57 · 357 阅读 · 0 评论 -
C++ (-1)this is a problem
In the recent project, the judgment condition of the for loop appeared -1. A strange problem appeared.int a = 0;int b = 1;cout << a - b;result : -----------> 18446744073709551615 I really hadn't thought of that problem.If you have a g..原创 2020-06-02 20:09:51 · 343 阅读 · 0 评论 -
Use ---Tesseract4---in the QTcreator(Using MSV2015)
tesseract是一个比较流行的OCR识别库,但是对于tesseract在qt中如何使用呢?为什么要将它配置在QT下呢,您也完全可以将QT配置在Visual Studio下,但是对于跨平台的软件工程而言,Visual Studio不是一个很好的选择。对于OCR识别为什么不选择深度学习呢?主要原因在于深度学习的模型很大程度都是基于Python的,依赖性较强,而且执行效率是个很大的问题。如果您想要实现C++与Python文件的深度学习调用,可以参考我的博客:(C++调用基于Python3.7.4+Tenso.原创 2020-06-01 21:27:19 · 767 阅读 · 1 评论