日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

DALSA线阵CCD相机开发 之 opencv读取图片

發布時間:2025/3/21 66 豆豆
生活随笔 收集整理的這篇文章主要介紹了 DALSA线阵CCD相机开发 之 opencv读取图片 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

SDK的下載
Sapera_LT_8.31_SDK 百度網盤下載地址:鏈接:密碼:ckm7。

SDK的安裝
解壓運行.exe文件,按照提示確定,下一步即可。

幫助文檔和demo
如果要獲得完整的幫助文檔和demo,在SDK安裝時選擇full安裝,路徑可以自己選擇,默認路徑為 C:\Program Files\Teledyne DALSA\。

主要demo簡介
在C:\Program Files\Teledyne DALSA\Sapera\Demos\Classes\VC中提供了多個開發Demo供用戶參考。

Grab Demo (Dialog Box Interface 對話框)
路徑:\Sapera\Demos\Classes\Vc\GrabDemo\Release\GrabDemo.exe
功能:
1.顯示了基本的采集功能
2.允許獲得連續或單幀圖像
3.同時調整采集參數

Grab Demo (Single Document Interface 單文檔)
路徑:\Sapera\Demos\Classes\Vc\GrabDemo\Release\GrabDemoSDI.exe
功能:
1.顯示了基本的采集功能
2.允許獲得連續或單幀圖像
3.同時調整采集參數

Sequential Grab Demo
路徑:\Sapera\Demos\Classes\Vc\SeqGrabDemo\Release\SeqGrabDemo.exe
功能:
1.采集序列圖像至內存而后顯示
2.程序允許錄制多段視頻
3.并可存儲、導入AVI文件
4.每一圖像存儲于不同buffer中
5.可通過對話框設置buffer大小等參數

Bayer Demo
路徑:\Sapera\Demos\Classes\Vc\BayerDemo\Release\BayerDemo.exe
功能:
1.顯示Bayer 轉換功能
2.進行Bayer轉換參數設置

Flat-field Demo
路徑:\Sapera\Demos\Classes\Vc\FlatFieldDemo\Release\FlatFieldDemo.exe
功能:
1.顯示平場校正功能
2.平場校正Flat FieldCorrection (FFC) 包括調整模式噪聲FixedPattern Noise (FPN),像素置換 Pixel Replacement, Photo Response Non Uniformity (PRNU), 和斑點校正 Shading Correction.

I/O Demo
路徑:\Sapera\Demos\Classes\Vc\IODemo\Release\IODemo.exe
功能:
1顯示一般I/O設備的使用
2.允許監視當前輸入輸出狀態
3.改變高低極性狀態;允許監視輸入中斷并記錄中斷數

GigE-Vision Camera Demo
路徑:\Sapera\Demos\Classes\Vc\GigeCameraDemo\Release\GigeCameraDemo.exe
功能:怎樣使用DALSAGigE Vision? 相機獲得圖像. 可導入相機配置文件

使用opencv讀取圖片
以 GigeCameraDemo 為例,找到 XferCallback 函數,修改代碼如下:

void CGigeCameraDemoDlg::XferCallback(SapXferCallbackInfo *pInfo)
{
?? ?CGigeCameraDemoDlg *pDlg= (CGigeCameraDemoDlg *) pInfo->GetContext();

? ?// If grabbing in trash buffer, do not display the image, update the
? ?// appropriate number of frames on the status bar instead
? ?if (pInfo->IsTrash())
? ?{
? ? ? CString str;
? ? ? str.Format(_T("Frames acquired in trash buffer: %d"), pInfo->GetEventCount());
? ? ? pDlg->m_statusWnd.SetWindowText(str);
? ?}

? ?// Refresh view
? ?else
? ?{
?? ? ? BYTE pData;
?? ? ? void* pDataAddr = &pData;
?? ? ? BOOL success = pDlg->m_Buffers->GetAddress(static_count, &pDataAddr);
?? ? ? int width = pDlg->m_Buffers->GetWidth();
?? ? ? int height = pDlg->m_Buffers->GetHeight();
?? ? ? cv::Mat img = cv::Mat::zeros(cv::Size(width, height), CV_8U);
?? ? ? memcpy(img.data, pDataAddr, width*height);
?? ? ? //Find_and_Draw_LeftLines(img, 10, 150, 5, left_deta_width);
?? ? ? //line(left_pic, cv::Point(left_detect_width, 0), cv::Point(left_detect_width, 32), cv::Scalar(255, 255, 0), 2, 4);
?? ? ? //cv::imshow("image", left_pic);
?? ? ? cv::imshow("image", img);
?? ? ? cv::waitKey(1);
? ?}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
運行代碼即可。

效果圖
運行 GigeCameraDemo 后,產生如下界面。可以選擇Acquisition Server和Acquisition Device,也可以選擇CCF配置文件,默認是初始化的配置。

點擊OK按鈕進入相機的操作界面,點擊Grab進行圖像采集,此處設置了圖片大小為4096*32,使用opencv中imshow函數顯示出來,效果圖如下。

?

總結

以上是生活随笔為你收集整理的DALSA线阵CCD相机开发 之 opencv读取图片的全部內容,希望文章能夠幫你解決所遇到的問題。

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