日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

OpenCV Mat数据类型及位数总结

發布時間:2023/11/27 生活经验 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 OpenCV Mat数据类型及位数总结 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

? ? opencv中很多數據結構為了達到內存使用的最優化,通常都會用它最小上限的空間來分配變量,有的數據結構也會因為圖像文件格式的關系而給予適當的變量,因此需要知道它們聲明的空間大小來配置適當的變量。一 般標準的圖片,為RGB格式它們的大小為8bits格式,范圍為0~255,對一個int空間的類型來說實在是太小,整整浪費了24bits的空間,假設有個640*480的BMP文件空間存儲內存,那整整浪費了640*480*3*(32-8)bits的內存空間,總共浪費了2.6MB!,也就是那 2.6MB內什么東西都沒存儲,如果今天以8bits的格式來存儲則只使用到0.6MB的內存而已(640*480*3*(8)+54 bits),因此,對于文件格式的對應是一件很重要的事.

? ?在這邊除了要考慮bits的空間大小外,還要考慮使用類型的正負號的問題,一般的圖像文件是不存在負號的,如果今天即使選則正確的空間大小,可是出現的結果卻是負的,那就功虧一簣了。這里除了Float及double類型,char,int,short int都是用二的補數表示法,它們不具正負號bit,而Float,double則是用IEEE 754,在第32bit,64bit上有一個正負號bit.

具體內容

float:??4字節,6-7位有效數字 -3.4E-38 到 3.4E38 ? ?

double: 8字節,15~16位有效數字 -1.7E-308 到 1.7E308

cvCreateImage()及cvCreateMat()對應

1.Unsigned 8bits(一般的圖像文件格式使用的大小)
IplImage數據結構參數:IPL_DEPTH_8U
CvMat數據結構參數:CV_8UC1,CV_8UC2,CV_8UC3,CV_8UC4

變量類型空間大小范圍其他
uchar8bits0~255(OpenCV缺省變量,同等unsigned char)
unsigned char8bits0~255?

2.Signed 8bits
IplImage數據結構參數:IPL_DEPTH_8S
CvMat數據結構參數:CV_8SC1,CV_8SC2,CV_8SC3,CV_8SC4

變量類型空間大小范圍其他
char8bits-128~127?

3.Unsigned 16bits
IplImage數據結構參數:IPL_DEPTH_16U
CvMat數據結構參數:CV_16UC1,CV_16UC2,CV_16UC3,CV_16UC4

變量類型空間大小范圍其他
ushort16bits0~65535(OpenCV缺省變量,同等unsigned short int)
unsigned short int16bits0~65535(unsigned short)

4.Signed 16bits
IplImage數據結構參數:IPL_DEPTH_16S
CvMat數據結構參數:CV_16SC1,CV_16SC2,CV_16SC3,CV_16SC4

變量類型空間大小范圍其他
short int16bits-32768~32767(short)

5.Signed 32bits
IplImage數據結構參數:IPL_DEPTH_32S
CvMat數據結構參數:CV_32SC1,CV_32SC2,CV_32SC3,CV_32SC4

變量類型空間大小范圍其他
int32bits-2147483648~2147483647(long)

6.Float 32bits

IplImage數據結構參數:IPL_DEPTH_32F
CvMat數據結構參數:CV_32FC1,CV_32FC2,CV_32FC3,CV_32FC4

變量類型空間大小范圍其他
float32bits1.18*10-38~3.40*1038?

7.Double 64bits

CvMat數據結構參數:CV_64FC1,CV_64FC2,CV_64FC3,CV_64FC4

變量類型空間大小范圍其他
double64bits2.23*10-308~1.79*10308?

8.Unsigned 1bit

IplImage數據結構參數:IPL_DEPTH_1U

變量類型空間大小范圍其他
bool1bit0~1?

其他變量對應

1.Signed 64bits

int64

long long

2.Unsigned 64 bits

uint64

unsigned long long

?

轉自

總結

以上是生活随笔為你收集整理的OpenCV Mat数据类型及位数总结的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。