最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

利用OpenCV中對圖像數(shù)據(jù)進行64F和8U轉(zhuǎn)換的方式

 更新時間:2020年06月03日 09:08:21   作者:清溪算法老號  
這篇文章主要介紹了利用OpenCV中對圖像數(shù)據(jù)進行64F和8U轉(zhuǎn)換的方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

在OpenCV中很多對數(shù)據(jù)的運算都需要轉(zhuǎn)換為64F類型,比如伽瑪變換,這個很明顯要求冪的底數(shù)是double類型~

而cvShowImage()又要求是U8才能顯示,否則顯示出來是一片空白!

所以經(jīng)常要進行轉(zhuǎn)換,怎么做呢?看了下面的幾行代碼你就知道了!

IplImage *pSrcImage = cvLoadImage("pout.jpg", CV_LOAD_IMAGE_UNCHANGED); 
IplImage *pGrayImage_8U = cvCreateImage(cvGetSize(pSrcImage), IPL_DEPTH_8U, 1); 
IplImage *pGrayImage_8U_2 = cvCreateImage(cvGetSize(pSrcImage), IPL_DEPTH_8U, 1); 

IplImage *pGrayImage_64F=cvCreateImage(cvGetSize(pSrcImage), IPL_DEPTH_64F, 1);

cvCvtColor(pSrcImage, pGrayImage_8U, CV_BGR2GRAY); //RGB轉(zhuǎn)灰度圖像

cvConvertScale(pGrayImage_8U, pGrayImage_64F); //8U轉(zhuǎn)64F
cvConvertScale(pGrayImage_64F, pGrayImage_8U_2) //64F轉(zhuǎn)8U

補充知識:OpenCV中利用cvConvertScale()對圖像數(shù)據(jù)作線性變換~

在OpenCV的IplImage結(jié)構(gòu)體char * imageData成員的說明中,官方文檔明確提示大家不能對這個指針?biāo)鶎?yīng)的數(shù)據(jù)直接操作,否則會帶來意想不到的錯誤。

原話是這樣的:

Do not assign imageData directly. Use SetData().

我曾經(jīng)就犯傻直接進行操作,結(jié)果造成數(shù)據(jù)類型不匹配,最后還非得去修改頭文件中的char * imageData為unsigned char * imageData才解決問題,然而這種操作是極其不妥的~正確的做法是用OpenCV提供的各種函數(shù)來對圖像數(shù)據(jù)就行操作!比如cvConvertScale()、Use SetData()之類的!

這里我用cvConvertScale()來實現(xiàn)灰度圖像的線性變換,程序非常簡潔,而且沒有任何問題!

源代碼如下:

#include <opencv2/opencv.hpp> 
#include <opencv2/legacy/compat.hpp> 
using namespace std; 
#pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"") 

int main()
{
int i=0;
unsigned char *imageData_1;
unsigned char *imageData_2;
const char *pstrWindowsATitle = "原圖像(opencv66.net)"; 
const char *pstrWindowsBTitle = "線性變換后的圖像(opencv66.net))"; 
//從文件中加載原圖 
IplImage *pSrcImage = cvLoadImage("coins.png", CV_LOAD_IMAGE_UNCHANGED); 
//創(chuàng)建輸出的圖像
IplImage *pOutImage = cvCreateImage(cvGetSize(pSrcImage), IPL_DEPTH_8U,1);
cvConvertScale(pSrcImage,pOutImage,2,-55); //利用cvConvertScale增加對比度的線性變換,線性變換中的比例因子k=2 偏移值b=-55
cvNamedWindow(pstrWindowsATitle, CV_WINDOW_AUTOSIZE); 
cvShowImage(pstrWindowsATitle,pSrcImage); 
cvNamedWindow(pstrWindowsBTitle, CV_WINDOW_AUTOSIZE); 
cvShowImage(pstrWindowsBTitle, pOutImage); 
cvWaitKey(0); 
cvDestroyWindow(pstrWindowsATitle); 
cvDestroyWindow(pstrWindowsBTitle); 
cvReleaseImage(&pSrcImage); 
cvReleaseImage(&pOutImage); 
return 0;
}

運行結(jié)果如下圖所示(和我在MATLAB中的運行結(jié)果一致哦)

MATLAB運行后的結(jié)果

以上這篇利用OpenCV中對圖像數(shù)據(jù)進行64F和8U轉(zhuǎn)換的方式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python中高效的json對比庫deepdiff詳解

    Python中高效的json對比庫deepdiff詳解

    deepdiff模塊常用來校驗兩個對象是否一致,包含3個常用類,DeepDiff,DeepSearch和DeepHash,其中DeepDiff最常用,可以對字典,可迭代對象,字符串等進行對比,使用遞歸地查找所有差異,今天我們就學(xué)習(xí)一下快速實現(xiàn)代碼和文件對比的庫–deepdiff
    2022-07-07
  • 使用python+whoosh實現(xiàn)全文檢索

    使用python+whoosh實現(xiàn)全文檢索

    今天小編就為大家分享一篇使用python+whoosh實現(xiàn)全文檢索,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • python將logging模塊封裝成單獨模塊并實現(xiàn)動態(tài)切換Level方式

    python將logging模塊封裝成單獨模塊并實現(xiàn)動態(tài)切換Level方式

    這篇文章主要介紹了python將logging模塊封裝成單獨模塊并實現(xiàn)動態(tài)切換Level方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05
  • Python中用Spark模塊的使用教程

    Python中用Spark模塊的使用教程

    這篇文章主要介紹了Python中用Spark模塊的使用教程,來自IBM官方技術(shù)文檔,需要的朋友可以參考下
    2015-04-04
  • OpenCV2學(xué)習(xí)筆記之視頻流讀取與處理

    OpenCV2學(xué)習(xí)筆記之視頻流讀取與處理

    為OpenCV是搞計算機視覺必須要掌握的基礎(chǔ),這篇文章主要給大家介紹了關(guān)于OpenCV2學(xué)習(xí)筆記之視頻流讀取與處理的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-01-01
  • python字典的setdefault的巧妙用法

    python字典的setdefault的巧妙用法

    這篇文章主要介紹了python字典的setdefault的巧妙用法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-08-08
  • python 畫三維圖像 曲面圖和散點圖的示例

    python 畫三維圖像 曲面圖和散點圖的示例

    今天小編就為大家分享一篇python 畫三維圖像 曲面圖和散點圖的示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • python如何將兩張圖片生成為全景圖片

    python如何將兩張圖片生成為全景圖片

    這篇文章主要為大家詳細介紹了python如何將兩張圖片生成為全景圖片,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • pytest實現(xiàn)多種調(diào)用方式

    pytest實現(xiàn)多種調(diào)用方式

    pytest是一個非常成熟的全功能的Python測試框架,本文主要介紹了pytest多種調(diào)用方式,具有一定的參考價值,感興趣的可以了解一下
    2023-12-12
  • Jupyter notebook 遠程配置及SSL加密教程

    Jupyter notebook 遠程配置及SSL加密教程

    這篇文章主要介紹了Jupyter notebook 遠程配置及SSL加密教程,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04

最新評論

华容县| 翁牛特旗| 贡嘎县| 江油市| 普兰店市| 佛冈县| 西平县| 锦屏县| 根河市| 巴楚县| 莲花县| 安福县| 长沙市| 延长县| 馆陶县| 台山市| 文化| 甘洛县| 卓尼县| 仁怀市| 房山区| 杭锦旗| 新沂市| 濮阳市| 桃江县| 晋城| 岳西县| 河源市| 津南区| 夏河县| 古交市| 平舆县| 海南省| 定西市| 巫山县| 淄博市| 曲周县| 威宁| 西峡县| 香格里拉县| 南皮县|