- 博客(20)
- 收藏
- 关注
原创 OpenCV中,perspectiveTransform函数和warpPerspective函数的区别和联系
在这个示例中,pts1和pts2是源图像和目标图像中对应点的数组,width和height是输出图像的尺寸。其中,src是源图像,dst是输出图像,M是变换矩阵,dsize是输出图像的大小,flags是插值方法,borderMode是边界像素的填充方式,borderValue是边界填充值。输出不同:perspectiveTransform输出变换后的点坐标,而warpPerspective输出变换后的图像。其中,src是输入点集,dst是输出点集,m是变换矩阵。warpPerspective函数。
2024-01-16 18:20:40
1929
原创 科普:UTF-8和Unicode分别是什么?二者有什么区别
UTF-8 是一种可变长度的编码方式,它使用1-4个字节来表示一个字符,这使得它可以表示Unicode中的所有字符。Unicode是一种字符编码标准,而UTF-8是一种实现Unicode的编码方式。UTF-8是一种可变长度的编码方式,这意味着不同的字符可以由不同数量的字节表示。而Unicode则不区分字符和字节。在C++中,UTF-8和Unicode都是用于处理字符编码的规范,但它们之间有一些重要的区别。Unicode可以表示世界上所有的字符,而UTF-8可以表示Unicode中的所有字符。
2023-11-16 14:47:41
478
1
原创 文件流操作之:std::ifstream 和std::ofstream 的异同点
std::ifstream 和std::ofstream 的异同点
2023-10-13 09:27:58
602
原创 关于path.string()、path.filename().string()、path.parent_path().string()、path.parent_path().filename()
path.string()、path.filename().string() 、path.parent_path().filename().string() 和 path.parent_path().string() 之间的区别
2023-10-12 16:19:46
194
原创 关于类对象和对象属性的地址探讨
#include <iostream>#include <string>using namespace std;class person{public: person() { cout << "默认构造函数的调用" << endl; } person(int age) { m_age = age; cout << "有参构造函数的调用" << endl; } /*person(const person
2022-03-16 15:05:56
822
原创 删除vector容器某位置元素的三种简单方法
#include<algorithm>#include<iostream>#include<vector>using namespace std;int main(){ vector<int>vec;//定义一个容器vec for (int i = 0; i < 5; i++)//给该容器装进5个数 vec.push_back(i); for (auto&v : vec) cout <<"没删除时容器的元素有
2021-11-26 21:36:30
10821
1
原创 关于Opencv中Matches类成员变量的测试
#include"opencv2/core/core.hpp"#include"opencv2/highgui/highgui.hpp"#include"opencv2/imgproc/imgproc.hpp"#include"opencv2/features2d/features2d.hpp"#include"opencv2/nonfree/nonfree.hpp"#include"opencv2/legacy/legacy.hpp"#include<typeinfo>usin
2021-09-24 10:25:34
392
原创 opencv中的Point2f用法避雷
point2f(x,y)中的x代表在图像中的列,y代表图像中的行。用法:Point2f a;a.x=2;a.y=1.5;或者Point2f a=Point2f(2,1.5)常入坑的用法:Point2f a=(2,1.5);注意这种用法是错误的。代码验证:#include"iostream"#include"opencv2/opencv.hpp"#include"vector"#include<cmath>#include<queue>#inclu
2021-09-03 17:55:20
19245
2
原创 Harris角点检测求得的响应值R到底有多大?
#include "opencv2/opencv.hpp"#include"opencv2/highgui/highgui.hpp"#include"opencv2/imgproc/imgproc.hpp"#include<iostream>#include<vector>#include<typeinfo>using namespace std;using namespace cv;int main(){ Mat src, src_gray, ds
2021-08-20 22:04:20
394
原创 黑马程序员c++115课,引用方式返回和值方式返回的理解
#include <iostream>using namespace std;class Person{public: Person(int age) { //1、当形参和成员变量同名时,可用this指针来区分 this->age = age; } Person& PersonAddPerson(Person p) { cout << "拷贝构造函数被调用" << endl; this->age += p.age
2021-08-11 17:15:48
836
3
原创 关于访问矩阵当前行地址的新老方法对比
#include <iostream>#include <opencv2/opencv.hpp>using namespace std;using namespace cv;int main(){ Mat src(3, 3, CV_8UC1, Scalar(1));//创建一个3*3矩阵,类型是8位无符号单通道,每个元素值都是1。 for (int i = 0; i < src.rows; i++)//遍历矩阵每一行。 { float* data1
2021-08-10 20:28:15
178
原创 Sobel函数中的scale参数对输出结果的影响
今天看Harris的源码时,发现Sobel函数的参数scale=1的默认值被改了,主要目的是为了通过减小尺度,来提高平滑处理的速度。下文调用了sobel函数,来看看究竟scale这个参数对输出有什么影响。首先,简单介绍下sobel函数,如下:void Sobel(inputArray,outputArray,int ddepth,int dx,int dy,int ksize=3,double scale=1,double delta=0,int borderType=BORDER_DEFAULT)
2021-08-10 17:47:06
669
原创 关于Mat类型data、step、depth、elemsize等属性的解读
关于Mat类型各种属性的解读假如我们有一块地皮,我们要在这个地皮上盖房子,用来做宾馆。所以首先我们要设计好关于这块地皮的所有属性,比如:盖几层 //dim每层的房间有几行几列 size()每行有多少间房 cols每列有多少间房 rows每个房间几张床 channel每张床的成本价 depth房间每晚多少钱 elemsize折合一张床每晚多少钱 elemsize1每行所有的房间一晚多少钱 stepuchar类型的指针,指向Mat数据矩阵的首地址。可以理解为标示一个房屋的门牌号;dims
2021-08-09 19:03:20
1944
原创 关于c++异或、按位与操作计算汉明距离笔记
汉明距离就是比较两个整数的二进制表示中,对应位置数字不同的总数,如:1011101 与 1001001 之间的汉明距离是 2。#include "iostream"#include"cmath"using namespace std;int main(){//方法一: int x, y; x=10; y=20; int a=x^y,answer=0; while (a != 0) { answer++; a &= a - 1;//结论:n和n-
2021-08-05 16:31:12
175
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人