opencv 手势识别杂乱知识点

1.

初始化矩阵:

Mat depthShow1(Size(640, 480), CV_8UC1, Scalar(255)); //大小640*480 单通道灰度图像,灰度大小为255

2.

设置ROI区域(图像中自己感兴趣的矩形区域):

Rect roi;

roi.x=50;

roi.y=50;

roi.width=100;

roi.height=100; //分别设置roi的坐标(左上角)和大小

3.

图像大小变换

假设depthRaw是16位的,而depthShow是8位的,想要共享数据就需要把大小进行变换,DEPTH_SCALE_FACTOR=255.0/ 4096.0

depthRaw.convertTo(depthShow, CV_8U, DEPTH_SCALE_FACTOR);

4.

设置矩阵中某一点的像素值

depthShow.at<uchar>(0,0) = 0;//设置depthShow矩阵的(0,0) 点的灰度值为0

5.

获取矩阵中某点的像素值
int get_pixel(Mat & img, Point pt)
{
int width = img.cols; //图片宽度
int height = img.rows;
uchar* ptr = (uchar*)img.data + pt.y * width; //获得灰度值数据指针
int intensity = ptr[pt.x];
return intensity;
}

如函数所示,对其中参数有要求,分别是矩阵和坐标点的格式。
1.

Rect roi1, roi2; 初始化矩阵():

Mat depthShow1(Size(640, 480), CV_8UC1, Scalar(255)); //大小640*480 单通道灰度图像,灰度大小为255

2.

设置ROI区域(图像中自己感兴趣的矩形区域):

Rect  roi; 

roi.x=50;

roi.y=50;

roi.width=100;

roi.height=100;   //分别设置roi的坐标(左上角)和大小

3.

图像大小变换

假设depthRaw是16位的,而depthShow是8位的,想要共享数据就需要把大小进行变换,DEPTH_SCALE_FACTOR=255.0/ 4096.0

depthRaw.convertTo(depthShow, CV_8U, DEPTH_SCALE_FACTOR);

4.

设置矩阵中某一点的像素值

depthShow.at<uchar>(0,0) = 0;//设置depthShow矩阵的(0,0) 点的灰度值为0

5.

获取矩阵中某点的像素值

int get_pixel(Mat & img, Point pt)             
{
    int width = img.cols; //图片宽度  
    int height = img.rows; 
    uchar* ptr = (uchar*)img.data + pt.y * width; //获得灰度值数据指针  
    int intensity = ptr[pt.x];
    return intensity;
}

如函数所示,对其中参数有要求,分别是矩阵和坐标点的格式。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值