导航

opencv 入门基础

Posted on 2013-08-20 14:09  亦舒雪  阅读(240)  评论(0)    收藏  举报

一.如何从固定的数据类型创建Mat

说到数据的存储,这一直就是一个值得关注的问题,Mat_<uchar>对应的是CV_8U,Mat_<uchar>对应的是CV_8U,Mat_<char>对应的是CV_8S,Mat_<int>对应的是
CV_32S,Mat_<float>对应的是CV_32F,Mat_<double>对应的是CV_64F,对应的数据深度如下: 
• CV_8U - 8-bit unsigned integers ( 0..255 ) • CV_8S - 8-bit signed integers ( -128..127 ) • CV_16U - 16-bit unsigned integers ( 0..65535 ) • CV_16S - 16-bit signed integers ( -32768..32767 ) 
• CV_32S - 32-bit signed integers ( -2147483648..2147483647 ) 
• CV_32F - 32-bit floating-point numbers ( -FLT_MAX..FLT_MAX, INF, NAN )

二.char*,const char*和string的相互转换

1. string转const char*

   string s = "abc";

   const char* c_s = s.c_str();

2. const char*转string

   直接赋值即

   const char* c_s = "abc";

   string s(c_s);

3. string转char*

   string s = "abc";

   char* c; 

   const int len = s.length(); 

   c = new char[len+1];

   strcpy(c,s.c_str());

4. char*转string

   char* c = "abc";

   string s(c);

5. const char*转char*

   const char* cpc = "abc";

   char* pc = new char[100];//足够长

   strcpy(pc,cpc);

6. char*转const char*

   直接赋值即可

   char* pc = "abc";   const char* cpc = pc;

三 opengl内存数据类型

GL_RGB告诉OpenGL图像数据由红、绿、蓝三色数据组成。 GL_UNSIGNED_BYTE意味着组成图像的数据是无符号字节类型的。最后...TextureImage[0]->data告诉OpenGL纹理数据的来源。这里指向存放在TextureImage[0]记录中的数据。

四 Mat的使用

http://www.360doc.com/content/12/1026/13/6408986_243880549.shtml