Halcon學習之二:攝像頭獲取圖像和相關參數

来源:互联网 发布:图片欣赏软件 编辑:程序博客网 时间:2024/04/29 05:02
http://blog.csdn.net/xinrui_hhuc/article/details/6120005 

1、close_all_framegrabbers ( : : : )

   關閉所有圖像采集設備。

2、close_framegrabber ( : : AcqHandle : )

    關閉HandleAcqHandle的圖像采集設備。

3、open_framegrabber ( : : Name, HorizontalResolution,

VerticalResolution, ImageWidth, ImageHeight, StartRow, StartColumn,

Field, BitsPerChannel, ColorSpace, Generic, ExternalTrigger,

CameraType, Device, Port, LineIn : AcqHandle )

     打開圖像采集設備

參數信息:

   Name:圖像采集設備的名稱

   HorizontalResolutionVerticalResolution:分別指預期的圖像采集接口的水平分辨率和垂直分辨率

   ImageWidthImageHeight:指預期圖像的寬度部分和高度部分。

   StartRowStartColumn:指顯示預期圖像的開始坐標

   Field:預期圖像是一半的圖像或者是完整圖像

   BitsPerChannel:每像素比特數和圖像通道

   ColorSpace:輸出的色彩格式的抓住圖像{grayrawrgbyuvdefault}

   Generic:通用參數與設備細節部分的具體意義。

   ExternalTrigger:是否有外部觸發

   CameraType:使用相機的類型

   Device:圖像獲取設別連接到的設備

   Port:圖像獲取設別連接到的端口

   LineIn :相機輸入的多路轉接器

   AcqHandle:圖像獲取設備的Handle

4、grab_image ( : Image : AcqHandle : )

獲取AcqHandle的圖像采集設備的Image

5、get_framegrabber_param ( : : AcqHandle, Param : Value )

查詢AcqHandle的圖像采集設備的特殊參數

Param∈{nameportrevisionbits_per_channel, camera_typecolor_spacedevice、fieldgenericexternal_triggergrab_timeouthorizontal_resolutionimage_availableimage_heightimage_widthline_instart_columnstart_rowvolatilevertical_resolutioncontinuous_grabbing}

6、info_framegrabber ( : : Name, Query : Information, ValueList )

查詢指定的圖像采集接口的信息。

Name為圖像采集設備的名稱

Query為需要查詢的參數名稱

Information是指輸出的文本信息

ValueList為該圖像采集接口的參數值。

     Name∈{1394IIDCABSBaumerFCAMBitFlowCrevisuEyeDahengCAMDahengFGDFG-LCDirectFileDirectShowdPictDT315xDT3162eneoeXciteFALCONFlashBusMVFlashBusMXGigEVisionGinga++GingaDGINSPECTATAGINSPECTA5iPORTLeutronLinXLuCamMatrixVisionAcquireMILLiteFilemEnableIIImEnableIVmEnableVisualAppletsMultiCamOpteonp3i2p3i4PixeLINKPXPXCPXDPXRpylonRangerCRangerESaperaLTSentechSonyXCISonyXCI-2SVCam-GigETWAINVRmUsbCam}

    Query∈{defaultsgeneralinfo_boardsparameters、fieldgenericparameters_readonlyparameters_writeonlyvertical_resolutionportbits_per_channelcamera_typecolor_spacedeviceexternal_triggereldgenerichorizontal_resolutionimage_heightimage_widthstart_rowstart_columnrevision}

7、grab_image_async ( : Image : AcqHandle, MaxDelay : )

獲取AcqHandle的圖像采集設備的Image

當調用grab_image_async 或者grab_data_async時,抓拍下一個圖像就結束了。

 

[c-sharp] view plaincopy
  1. // Select a suitable image acquisition interface name AcqName  
  2. open_framegrabber(AcqName,1,1,0,0,0,0,』default』,-1,』default,-1.0,』default』,』default』,』default』,-1,-1,AcqHandle)  
  3. // Grab image + start next grab  
  4. grab_image_async(Image1,AcqHandle,-1.0)  
  5. // Process Image1 ...  
  6. // Finish asynchronous grab + start next grab  
  7. grab_image_async(Image2,AcqHandle,-1.0)  
  8. // Process Image2 ...  
  9. close_framegrabber(AcqHandle)  

8、grab_image_start ( : : AcqHandle, MaxDelay : )

     開始抓拍 

只有當和grab_image_async or grab_data_async一起使用時,grab_image_start 才會起作用。

 

[c-sharp:showcolumns] view plaincopy
·········10········20········30········40········50········60········70········80········90········100·······110·······120·······130·······140·······150
  1. // Select a suitable image acquisition interface name AcqName  
  2. open_framegrabber(AcqName,1,1,0,0,0,0,』default』,-1,』default,-1.0,  
  3. default』,』default』,』default』,-1,-1,AcqHandle)  
  4. grab_image(Image1,AcqHandle)  
  5. // Start next grab  
  6. grab_image_start(AcqHandle,-1.0)  
  7. // Process Image1 ...  
  8. // Finish asynchronous grab + start next grab  
  9. grab_image_async(Image2,AcqHandle,-1.0)  
  10. // Process Image2 ...  
  11. close_framegrabber(AcqHandle)  

9、get_framegrabber_lut ( : : AcqHandle : ImageRed, ImageGreen,

ImageBlue )

    查詢AcqHandle的圖像采集設備的look-up table

    注意:該運算子不能支持所有的圖像采集設備

10、grab_data ( : Image, Region, Contours : AcqHandle : Data )

獲取AcqHandle的圖像采集設備獲得的Image、預處理Region和預處理XLD輪廓Contours和預處理控制數Data

注意:該運算子不能支持所有的圖像采集設備

11、grab_data_async ( : Image, Region, Contours : AcqHandle,MaxDelay: Data )

   獲取AcqHandle的圖像采集設備的Image預處理Region和預處理XLD輪廓Contours和預處理控制數據Data。(需要特殊圖像采集數據)

12、set_framegrabber_lut ( : : AcqHandle, ImageRed, ImageGreen,ImageBlue : )

     設置AcqHandle的圖像采集設備的look-up table

13、set_framegrabber_param ( : : AcqHandle, Param, Value : )

    設置AcqHandle的圖像采集設備的特殊參數

 相關代碼:

[c-sharp:firstline[0]] view plaincopy
  1. close_all_framegrabbers ()  
  2. open_framegrabber ('DahengCAM', 1, 1, -1, -1, 0, 0, 'default', -1, 'rgb', -1, 'false''default''default'-1, -1, AcqHandle)  
  3. grab_image (Image, AcqHandle)  
  4. grab_image_async (Image2, AcqHandle, -1)  
  5. get_framegrabber_param (AcqHandle, 'image_width'Value)  
  6. info_framegrabber ('DirectFile''info_boards'Information, ValueList)  

可以通過調試以上代碼,並且查看相關變量的變化,更深入的了解函數的意義。

注意:在本段代碼中,使用的是大恆的HV1303的工業攝像機,如果是使用一般的攝像頭來采集數據的話,Name值可以設置為Direct_show。

原创粉丝点击