青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

The Fourth Dimension Space

枯葉北風寒,忽然年以殘,念往昔,語默心酸。二十光陰無一物,韶光賤,寐難安; 不畏形影單,道途阻且慢,哪曲折,如渡飛湍。斬浪劈波酬壯志,同把酒,共言歡! -如夢令

opencv中訪問像素點的方法


* Indirect access: (General, but inefficient, access to any type image)
效率低!
o For a single-channel byte image:

IplImage* img=cvCreateImage(cvSize(640,480),IPL_DEPTH_8U,1);
CvScalar s;
s=cvGet2D(img,i,j); // get the (i,j) pixel value
printf("intensity=%f/n",s.val[0]);
s.val[0]=111;
cvSet2D(img,i,j,s); // set the (i,j) pixel value

o For a multi-channel float (or byte) image:

IplImage* img=cvCreateImage(cvSize(640,480),IPL_DEPTH_32F,3);
CvScalar s;
s=cvGet2D(img,i,j); // get the (i,j) pixel value
printf("B=%f, G=%f, R=%f/n",s.val[0],s.val[1],s.val[2]);
s.val[0]=111;
s.val[1]=111;
s.val[2]=111;
cvSet2D(img,i,j,s); // set the (i,j) pixel value

* Direct access: (Efficient access, but error prone)

o For a single-channel byte image:

IplImage* img=cvCreateImage(cvSize(640,480),IPL_DEPTH_8U,1);
((uchar *)(img->imageData + i*img->widthStep))[j]=111;

o For a multi-channel byte image:

IplImage* img=cvCreateImage(cvSize(640,480),IPL_DEPTH_8U,3);
((uchar *)(img->imageData + i*img->widthStep))[j*img->nChannels + 0]=111; // B
((uchar *)(img->imageData + i*img->widthStep))[j*img->nChannels + 1]=112; // G
((uchar *)(img->imageData + i*img->widthStep))[j*img->nChannels + 2]=113; // R

o For a multi-channel float image:

IplImage* img=cvCreateImage(cvSize(640,480),IPL_DEPTH_32F,3);
((float *)(img->imageData + i*img->widthStep))[j*img->nChannels + 0]=111; // B
((float *)(img->imageData + i*img->widthStep))[j*img->nChannels + 1]=112; // G
((float *)(img->imageData + i*img->widthStep))[j*img->nChannels + 2]=113; // R

* Direct access using a pointer: (Simplified and efficient access under limiting assumptions)

o For a single-channel byte image:

IplImage* img = cvCreateImage(cvSize(640,480),IPL_DEPTH_8U,1);
int height = img->height;
int width = img->width;
int step = img->widthStep/sizeof(uchar);
uchar* data = (uchar *)img->imageData;
data[i*step+j] = 111;

o For a multi-channel byte image:

IplImage* img = cvCreateImage(cvSize(640,480),IPL_DEPTH_8U,3);
int height = img->height;
int width = img->width;
int step = img->widthStep/sizeof(uchar);
int channels = img->nChannels;
uchar* data = (uchar *)img->imageData;
data[i*step+j*channels+k] = 111;

o For a multi-channel float image (assuming a 4-byte alignment):

IplImage* img = cvCreateImage(cvSize(640,480),IPL_DEPTH_32F,3);
int height = img->height;
int width = img->width;
int step = img->widthStep/sizeof(float);
int channels = img->nChannels;
float * data = (float *)img->imageData;
data[i*step+j*channels+k] = 111;

* Direct access using a c++ wrapper: (Simple and efficient access)

o Define a c++ wrapper for single-channel byte images, multi-channel byte images, and multi-channel float images:

template<class T> class Image
{
private:
IplImage* imgp;
public:
Image(IplImage* img=0) {imgp=img;}
~Image(){imgp=0;}
void operator=(IplImage* img) {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 Image<RgbPixelFloat> RgbImageFloat;
typedef Image<unsigned char> BwImage;
typedef Image<float> BwImageFloat;

o For a single-channel byte image:

IplImage* img=cvCreateImage(cvSize(640,480),IPL_DEPTH_8U,1);
BwImage imgA(img);
imgA[i][j] = 111;

o For a multi-channel byte image:

IplImage* img=cvCreateImage(cvSize(640,480),IPL_DEPTH_8U,3);
RgbImage imgA(img);
imgA[i][j].b = 111;
imgA[i][j].g = 111;
imgA[i][j].r = 111;

o For a multi-channel float image:

IplImage* img=cvCreateImage(cvSize(640,480),IPL_DEPTH_32F,3);
RgbImageFloat imgA(img);
imgA[i][j].b = 111;
imgA[i][j].g = 111;
imgA[i][j].r = 111;

posted on 2012-07-16 15:56 abilitytao 閱讀(467) 評論(0)  編輯 收藏 引用

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美成人亚洲| 亚洲网在线观看| 久久九九热re6这里有精品| 亚洲综合导航| 国产一区二区三区四区在线观看| 久久久水蜜桃| 玖玖综合伊人| 亚洲午夜小视频| 午夜精品一区二区三区电影天堂 | 国产精品九九久久久久久久| 亚洲小说欧美另类婷婷| 亚洲欧美自拍偷拍| 在线观看中文字幕不卡| 欧美激情1区2区3区| 欧美日韩中文字幕在线| 欧美一区二区三区在线看| 久久精品成人一区二区三区| 最新日韩欧美| 亚洲视频播放| 精品福利av| 日韩视频不卡| 国产一区二区精品在线观看| 欧美激情片在线观看| 欧美午夜视频网站| 蜜桃久久av一区| 欧美日韩综合一区| 狂野欧美性猛交xxxx巴西| 欧美日韩国产一级片| 久久九九99视频| 欧美日韩免费观看一区三区| 久久久久99| 欧美午夜精品久久久久久人妖| 久久久噜噜噜久久中文字幕色伊伊| 噜噜爱69成人精品| 香蕉久久精品日日躁夜夜躁| 美腿丝袜亚洲色图| 欧美一区二区性| 欧美日本网站| 亚洲国产成人tv| 国产午夜亚洲精品不卡| 亚洲美女福利视频网站| 亚洲第一区在线| 欧美一区二区三区在线看| 一区二区三区视频在线| 狂野欧美一区| 久久天天躁狠狠躁夜夜av| 国产精品女同互慰在线看| 亚洲免费观看高清在线观看| 亚洲国产91| 久久国产乱子精品免费女 | 国产日本欧美视频| 99re6这里只有精品| 亚洲国产高清自拍| 久久精品国产99国产精品| 香蕉乱码成人久久天堂爱免费| 欧美日本不卡高清| 亚洲高清免费在线| 亚洲国产日韩美| 免费不卡中文字幕视频| 亚洲神马久久| 亚洲淫片在线视频| 久久精品91久久久久久再现| 一区二区久久久久| 欧美激情1区2区| 女仆av观看一区| 在线观看国产成人av片| 性欧美超级视频| 欧美一区免费视频| 国产欧美精品国产国产专区| 亚洲天堂网在线观看| 亚洲一区三区视频在线观看| 欧美午夜在线观看| 亚洲视频导航| 欧美影视一区| 狠狠v欧美v日韩v亚洲ⅴ| 久久婷婷av| 亚洲激情一区二区| 亚洲欧洲另类国产综合| 欧美二区在线播放| 99国产精品久久久久久久| 亚洲一区二区不卡免费| 国产精品一区免费视频| 久久不射中文字幕| 欧美黄污视频| 亚洲在线日韩| 激情久久久久久久久久久久久久久久| 久久精品亚洲热| 亚洲国产成人午夜在线一区 | 久久亚洲综合| 91久久久亚洲精品| 欧美日韩八区| 午夜精品电影| 欧美激情欧美狂野欧美精品| 亚洲香蕉成视频在线观看| 国产日本精品| 欧美高清视频一区| 亚洲综合社区| 欧美国产专区| 午夜综合激情| 亚洲免费av片| 国产欧美一区视频| 欧美a一区二区| 先锋a资源在线看亚洲| 亚洲国产高清在线观看视频| 午夜视频在线观看一区| 亚洲国产日韩一区二区| 国产美女精品视频| 欧美激情麻豆| 久久久国产午夜精品| 99国产精品私拍| 美女露胸一区二区三区| 欧美一级日韩一级| 99天天综合性| 亚洲第一在线综合在线| 国产欧美午夜| 欧美色视频在线| 欧美成人福利视频| 欧美中文字幕视频| 一区二区三区成人精品| 欧美激情视频网站| 久久精品国产久精国产爱| 亚洲午夜国产成人av电影男同| 亚洲丶国产丶欧美一区二区三区 | 久久婷婷影院| 午夜精品免费视频| 亚洲天堂久久| 蜜桃久久精品一区二区| 午夜精品一区二区三区四区| 亚洲免费电影在线| 亚洲精品久久久久久一区二区 | 欧美成人免费全部| 久久久久在线观看| 久久国产手机看片| 亚洲综合三区| 亚洲一区三区视频在线观看| 亚洲美女在线视频| 99热在这里有精品免费| 日韩午夜三级在线| 99这里只有久久精品视频| 亚洲欧洲一区二区在线播放| 欧美电影在线观看完整版| 免费观看成人网| 欧美激情精品久久久久久久变态 | 久久国产精品亚洲77777| 欧美一级大片在线观看| 午夜天堂精品久久久久| 性欧美超级视频| 欧美一区三区三区高中清蜜桃| 亚洲一区尤物| 亚洲免费在线观看| 亚洲欧美日韩直播| 久久久久久免费| 久久视频一区| 免费黄网站欧美| 欧美成人乱码一区二区三区| 欧美激情自拍| 亚洲理伦在线| 亚洲视频播放| 欧美在线观看视频一区二区| 久久久免费av| 欧美激情按摩| 国产精品视频成人| 激情婷婷欧美| 99国内精品久久| 亚洲欧美精品在线观看| 久久精品国产99| 欧美xart系列高清| 亚洲三级毛片| 亚洲在线视频一区| 久久久久一本一区二区青青蜜月| 美女诱惑一区| 国产精品日韩| 亚洲韩日在线| 亚洲专区在线| 欧美成人一区在线| 在线视频日韩| 久久久久综合网| 欧美视频免费| 亚洲黄色成人| 性色av一区二区三区| 欧美国产欧美亚洲国产日韩mv天天看完整 | 亚洲欧美色婷婷| 蜜臀va亚洲va欧美va天堂| 亚洲精品中文字幕女同| 久久精品日韩一区二区三区| 欧美精品二区三区四区免费看视频| 欧美性jizz18性欧美| 亚洲第一偷拍| 欧美一区二区三区在线看| 亚洲人成亚洲人成在线观看| 亚洲欧美美女| 欧美日韩免费观看一区二区三区 | 欧美精品二区三区四区免费看视频| 国产精品一区2区| 999在线观看精品免费不卡网站| 久久久7777| 亚洲视频一区二区在线观看 | 亚洲一区在线播放| 欧美高清在线精品一区| 国产欧美一区二区三区另类精品 |