C语言使用指针处理opencv中的Mat图像数据

1.在处理图像时,一般直接使用opencv中的imread函数获取图片,但是获取到图片后没有用到opencv中的其他算法时,直接用图片处理就会出现耗时严重的情况,所以需要将图片形式转换成指针数组形式处理。

//定义初始化二维指针
unsigned short *src_arr;
src_arr = (unsigned short *)malloc(行 * 列* sizeof(unsigned short));

for (int i = 0; i < M; i++)
{
  temp_arr = src.ptr<ushort>(i); 
  for (int j = 0; j < N; j++)
  {
	  src_arr[i*M+j] = temp_arr[j];
   }
}

2.在定义指针数组函数时需要注意的是,函数定义与结果必须一致。

void function(unsigned short *src);

.Cpp
function(src_arr,);

void function(unsigned short *src)
{
	
	n_kern_x = 2 * round(3 * sigma) + 1;
	n_kern_y = n_kern_x;
		for (int j = 0; j < n_kern_y; j++) {
		for (int i = 0; i < n_kern_x; i++) {
			kern_yy_f[j*n_kern_y+ i] = kern_xx_f[i*n_kern_y+j];

		}
	}
	
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值