博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
通过C++ wrapper实现访问图像像素
阅读量:5764 次
发布时间:2019-06-18

本文共 650 字,大约阅读时间需要 2 分钟。

template<class T> class Image

 {
     private:
         IlpImage *imgp;
     public:
         Image(IplImage* img = 0)
         {
             imgp = img;
         }
         inline T* operator[](const int rowIndx)
         {
             return( (T*)(imgp ->imageData + rowIndx * imgp ->widthStep));
         }
 };
 
 typedef struct {
     unsigned char b, g, r;
 }RgbPixel;
 
 typedef struct {
     float b, g, r;
 }RgbPixelFloat;
 
 typedef Image<RgbPixel>      RgbImage;
 typedef Imgae<RgbPixelFloat> RgbImageFloat;
 typedef Image<unsigned char> BwImage;
 typedef Image<float>         BwImageFloat;

例:对3通道的字节型图像访问如下:

 IplImage* img = cvCreateImage(cvSize(640, 480), IPL_DEPTH_8U, 3);
 RgbImage imgA(img);
 //假设访问第K通道、第i行、第j列的像素
 imgA[i][j].b = 111;
 imgA[i][j].g = 111;
 imgA[i][j].r = 111;

转载地址:http://wcgkx.baihongyu.com/

你可能感兴趣的文章
【React】为什么我不再使用setState?
查看>>
Git原理与高级使用(3)
查看>>
从JDK源码看Writer
查看>>
Express 结合 Webpack 实现HMRwi
查看>>
基于protobuf的RPC实现
查看>>
我的友情链接
查看>>
HAProxy负载均衡原理及企业级实例部署haproxy集群
查看>>
开源中国动弹客户端实践(三)
查看>>
Win 8创造颠覆性体验:预览版关键更新
查看>>
vim在多文件中复制粘贴内容
查看>>
Android ContentObserver
查看>>
疯狂java学习笔记1002---非静态内部类
查看>>
ISA2006实战系列之一:实战ISA三种客户端部署方案(上)
查看>>
TCP服务器
查看>>
AC旁挂三层交换机管理ap,二层接入ap心得
查看>>
JS中比较数字大小
查看>>
springcloud 学习-eureka搭建-为eureka添加认证
查看>>
jQuery插件的开发
查看>>
基础,基础,还是基础之JAVA基础
查看>>
如何成为一个C++高级程序员
查看>>