- 博客(27)
- 收藏
- 关注
原创 C/C++函数调用过程
然后需要弄清楚栈的结构,即栈低位于高地址部分,栈顶位于低地址部分,栈是向下生长的。1.将rip设置为rsp指向的内容,即指main函数中add指令的下一条d=3这条指令。1.将rbp设置为它当前指向内存中的地址,退回到上一个栈帧的栈底基地址。为了更好的分析,举一个简单的例子,即在main函数中调用add函数。2.将rip指向的指令的内存地址入栈,即call指令的返回地址。1.将rsp中的地址赋值给rbp,使得rbp=rsp。2.将上一个栈帧的栈底基地址保存到新的栈帧中。1.rbp需要存储新的栈帧的基地址。
2023-05-06 23:20:23 163
原创 OpenCV入门--图像像素逻辑化、二值化
固定阈值二值化:是指对整个图像中的每一个像素都选用相同的阈值。类内方差指的是两类像素的方差的加权和,这里权指的是这类像素点数量占整个图像像素点数量的比值。逻辑运算包括与、或、非、异或等,在二进制图像中可以直接进行计算,但是在像素范围为0-255的图像中,必须将像素转换为二进制的八位,及0=0000,0000,255=1111,1111,然后按位进行计算。图像二值化( Image Binarization)就是将图像上的像素点的灰度值设置为0或255,也就是将整个图像呈现出明显的黑白效果的过程。
2023-05-05 15:06:47 189
原创 OpenCV入门---多通道的分离与合并
merge(vector m,int n,Mat mv)—m表示待合并和多个单通道图像,n为通道的个数,mv为合并后的多通道图像。第一个参数是图像矩阵向量容器,第二个参数是输出,这种方法无需说明需要合并的矩阵个数,vector对象自带说明。split(Mat m,vector mv)----m表示原多通道图像,mv表示被分离的单通道图像。第一个参数是图像矩阵数组,第二个参数是需要合并矩阵的个数,第三个参数是输出。
2023-05-01 10:09:08 275
原创 OpenCV入门---图像空间颜色的变换
RGB颜色模型:图像由RGB三个通道的像素叠加而成,像素值范围为0-255。HSV颜色模型:H是色度----颜色,S是饱和度—深浅,V是亮度-----明暗。GRAY颜色模型:工业常用模型,工业相机采集的数据就是灰度图像,灰度范围为:0-255,RGB转灰度颜色的公式为:Gray=R0.3+G。
2023-05-01 09:09:42 159
原创 OpenCV入门-Mat类
Mat类是opencv中表示图像的常用数据类型,其包括头部和数据部分,头部存储Mat的长、宽、通道数等信息,数据部分存放每个点的像素值。Mat符号运算:矩阵加减乘除,数乘等。Mat类中常用的属性包括。
2023-04-28 16:50:28 102
原创 剑指 Offer 12. 矩阵中的路径
给定一个 m x n 二维字符网格 board 和一个字符串单词 word。如果 word 存在于网格中,返回 true;否则,返回 false。单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。
2023-04-26 17:30:15 62
原创 剑指 Offer 11. 旋转数组的最小数字
例如,数组 [3,4,5,1,2] 为 [1,2,3,4,5] 的一次旋转,该数组的最小值为 1。注意,数组 [a[0], a[1], a[2], …, a[n-1]] 旋转一次 的结果为数组 [a[n-1], a[0], a[1], a[2], …若numbers[m]=numbers[j],则无法判断旋转点在[m+1,j]中还是在[i,m]中,则可以缩小范围判断,j=j-1;若numbers[m]>numbers[j],则说明m一定在左排序序列中,旋转点一定位于[m+1,j]中,则i=m+1;
2023-04-24 18:02:35 62
原创 力扣---二维数组中的查找
在一个 n * m 的二维数组中,每一行都按照从左到右 非递减 的顺序排序,每一列都按照从上到下 非递减 的顺序排序。请完成一个高效的函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。从矩阵的右上方开始查找,其实就是一课二叉排序树。
2023-04-20 23:31:41 113
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人