- 博客(11)
- 收藏
- 关注
原创 opencvc++学习笔记第二周
rectangle(目标图像,矩形区域,颜色,线条粗细(-1表示填充),线条类型,坐标点的小数点位数)applyColorMap(输入图像1/3通道,输出图像3通道,色彩映射类型)bitwise_and(第一个图像,第二个图象,输出图像) 交集。bitwise_or(第一个图像,第二个图象,输出图像) 并集。bitwise_not(输入图像,输出图像) 取反。split(输入的多通道图像,输出的单通道图像数组)resize(输入图像,输出图像,目标尺寸)输入图像若为三通道,则自动转为灰度图,再映射。
2025-05-22 21:49:28
546
原创 opencvc++学习笔记第一周
读取图像文件的函数Imread(读取图像文件路径,读取图像的方式)第二个参数:IMREAD_COLOR读取彩色,不读AIpha透明度(默认)IMREAD_GRAYSCALE用灰度模式读取IMREAD_UNCHANGED 读取包含BGR通道和AIpha通道返回值 成功则Mat对象,表示读取的图像失败则为空的 Mat对象在窗口中展示图像imshow(窗口名称,图像矩阵,Mat类型)显示窗口时间waitKey(time)time=0则表示无限等待,直到用户按下按键创建或设置一个窗口。
2025-05-20 09:27:14
581
原创 C++中的auto关键字
从 C++11 标准开始引入,它主要用于自动类型推导,让编译器根据变量的初始化表达式自动推断变量的类型,从而简化代码编写,提高代码的可读性和可维护性。在定义变量时,使用 auto 关键字代替具体的类型,编译器会根据初始化表达式自动推断变量的类型。
2025-02-05 10:01:16
187
原创 STL中的动态数组容器vector
vector内部通过动态内存分配来储存元素,它在堆上分配一块连续的内存空间来储存元素。当不断输入元素造成vector内存空间大于初始分配的内存空间时,它会通过重新分配空间并且另外开取一片更大的空间,将之前的数据复制并存入新的空间,并且释放先前的空间。通过索引访问 vector 中的元素,会进行越界检查,如果越界会抛出 std::out_of_range 异常。的大小,如果新大小大于原大小,新元素将被默认初始化;中的所有元素,使其大小变为 0,但容量可能不变。删除指定位置的元素或者指定范围的元素。
2025-02-01 23:21:08
237
原创 NULL和nullptr的区别
它的类型是std::nullptr_t,这是一种特殊的类型,可以隐式转换为任何指针类型,但不能转换为非指针类型。在这个例子中,编译器可能会将NULL解释为((void *)0),而在 C++ 中,从void*到其他指针类型(如int*)的转换不是隐式的,这可能会导致编译器发出警告或者错误,需要进行显式类型转换才能通过编译。这里,nullptr可以隐式地转换为int*类型,因为它的类型是std::nullptr_t,并且编译器知道它是一个空指针,符合函数func对于参数类型的要求,不会产生类型不匹配的问题。
2024-11-16 11:23:32
470
原创 二分查找-----精简版!不懂我吃?
(2.如果target >mid,把查找范围缩小到mid右边数组内的元素。(3.如果target<mid,把查找范围缩小到mid左边数组内的元素。4.重复以上3的步骤直到找到目标值或者搜索范围为空,也就是不存在这个值的意思。2.找中间值(left数组左边的边界 right数组右边的边界 )(1.如果target == mid,找到了。定义:在有序的数组中查找某一特定元素的位置的搜索算法。3.把中间值(mid)与目标值(target)进行比较。1.是否符合有序的条件。
2024-11-03 10:38:45
218
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人