1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        機(jī)器視覺應(yīng)用軟件開發(fā)步驟及流程

        共 5649字,需瀏覽 12分鐘

         ·

        2023-08-10 21:37

        點(diǎn)擊下方卡片,關(guān)注“新機(jī)器視覺”公眾號(hào)

           

        重磅干貨,第一時(shí)間送達(dá)


        機(jī)器視覺工程應(yīng)用主要可劃分為硬件和軟件兩大部分。

        硬件:工程應(yīng)用的第一步就是硬件選型。硬件選型很關(guān)鍵,因?yàn)樗悄愫竺婀ぷ鞯幕A(chǔ)。主要是光源、工業(yè)相機(jī)和鏡頭選擇。

        軟件:目前業(yè)內(nèi)商業(yè)庫主要有Halcon,康耐視,DALSA,evision,NI等,開源庫有OpenCV.其中NI的labview+vision模塊。


        機(jī)器視覺工程應(yīng)用的基本開發(fā)思路是:

        一、圖像采集,二、圖像分割,三、形態(tài)學(xué)處理,四、特征提取,五、輸出結(jié)果。

        下面在Halcon下對(duì)這四個(gè)步驟進(jìn)行講解。

        一、圖像采集:

        Halcon通過imageacquisition interfaces對(duì)各種圖像采集卡及各種工業(yè)相機(jī)進(jìn)行支持。其中包括:模擬視頻信號(hào),數(shù)字視頻信號(hào)Camera Link,數(shù)字視頻信號(hào)IEEE 1394,數(shù)字視頻信號(hào)USB2.0,數(shù)字視頻信號(hào)Gigabit Ethernet等。 
        Halcon通過統(tǒng)一的接口封裝上述不同相機(jī)的image acquisition interfaces,從而達(dá)到算子統(tǒng)一化。不同的相機(jī)只需更改幾個(gè)參數(shù)就可變更使用。

        Halcon圖像獲取的思路:1、打開設(shè)備,獲得該設(shè)備的句柄。2、調(diào)用采集算子,獲取圖像。

        1、打開設(shè)備,獲得該設(shè)備的句柄。

         
        open_framegrabber('DahengCAM', 1, 1, 0, 0, 0, 0, 'interlaced', 8, 'gray', -1, 'false','HV-13xx', '1', 1, -1, AcqHandle) //連接相機(jī),并設(shè)置相關(guān)參數(shù)

        Parameter

        Values

        Default

        Type

        Description

        Name

        'DahengCAM'


        string

        Name of the HALCON interface.

        HorizontalResolution

        1

        1


        1表示水平全部,2為水平1/2,表示圖像截取。

        VerticalResolution

        1 1

        同上,表示垂直方向。

        ImageWidth

        <width>

        0

        integer

        所需的圖像部分的寬度('0 '代表了完整的圖像)。

        ImageHeight <height> 0 integer 所需的圖像部分的高度(0”是完整的圖像)
        StartRow <width> 0 integer 所需的圖像部分左上方的像素行坐標(biāo)
        StartColumn <column> 0 integer 所需的圖像部分左上方的像素列坐標(biāo)
        Field


        忽視
        BitsPerChannel


        忽視
        ColorSpace 'default', 'gray', 'rgb' 'gray' string HALCON圖像的通道模式
        Generic


        忽視
        ExternalTrigger

        'false', 'true'

        'false' string 外部觸發(fā)狀態(tài)
        CameraType 'HV-13xx', 'HV-20xx', 'HV-30xx', 'HV-31xx','HV-50xx', 'SV-xxxx' 'HV-13xx' string 所連接的攝像機(jī)系列型。
        Device '1', '2', '3', ... '1' string 相機(jī)連接第一個(gè)設(shè)備號(hào)“1”,第二個(gè)設(shè)備編號(hào)“2”。
        Port


        忽視
        LineIn


        忽視

        2、調(diào)用采集算子,獲取圖像。

        grab_image (Image, AcqHandle) //(同步采集)完后處理圖像,然后再采集圖像。采集圖像的速率受處理速度影響。
        grab_image_async (Image, AcqHandle,MaxDelay) //(異步采集),一幅畫面采集完后相機(jī)馬上采集下一幅畫面,不受處理速度影響。其中第三個(gè)參數(shù)為:MaxDelay,表示異步采集時(shí)可以允許的最大延時(shí),本次采集命令距上次采集命令的時(shí)間不能超出MaxDelay,超出即重新采集。

        圖像采集其他相關(guān)算子:

             grab_image_start,該算子開始命令相機(jī)進(jìn)行異步采集。只能與grab_image_async(異步采集)一起使用。

        例子:

        * Select a suitable image acquisition interface nameAcqName
        open_framegrabber(AcqName,1,1,0,0,0,0,'default',-1,'default',-1.0,\
                         'default','default','default',-1,-1,AcqHandle)
        grab_image(Image1,AcqHandle)//進(jìn)行同步采集
        * Start next grab
        grab_image_start(AcqHandle,-1.0)//命令相機(jī)進(jìn)行異步圖像采集開始
        * Process Image1 ...
        * Finish asynchronous grab + start next grab
        grab_image_async(Image2,AcqHandle,-1.0)//讀取異步采集的圖像
        * Process Image2 ...
        close_framegrabber(AcqHandle)

        3、相機(jī)參數(shù)讀寫

        讀取相機(jī)參數(shù):

        info_framegrabber( : : NameQuery : InformationValueList)

        寫相機(jī)參數(shù):

        set_framegrabber_param( : : AcqHandleParamValue : )

         

        二、圖像分割:

        圖像分割的定義: 
        所謂圖像分割是指將圖像中具有特殊含義的不同區(qū)域分割開來,這些區(qū)域是互相不交叉的,每個(gè)區(qū)域都滿足特定區(qū)域的一致性。

        1、基于閾值的圖像分割

        threshold —采用全局閾值分割圖像。

        格式:    threshold(Image : Region : MinGray, MaxGray : )

        自動(dòng)全局閾值分割的方法:

        (1)計(jì)算灰度直方圖 
        (2)尋找出現(xiàn)頻率最多的灰度值(最大值) 
        (3)在threshold中使用與最大值有一定距離的值作為閾值

        代碼:

        gray_histo(Regions, Image,AbsoluteHisto, RelativeHisto) //計(jì)算出圖像區(qū)域內(nèi)的絕對(duì)和相對(duì)灰度值直方圖。
        PeakGray := sort_index(AbsoluteHisto)[255] //求出出現(xiàn)頻率最多的灰度值
        threshold(Image,Region,0,PeakGray-25)

        bin_threshold — 使用一個(gè)自動(dòng)確定的閾值分割圖像。

        格式:    bin_threshold(Image : Region : : )

         

        dyn_threshold —使用一個(gè)局部閾值分割圖像。

        格式:    dyn_threshold(OrigImage, ThresholdImage : RegionDynThresh : Offset, LightDark : )

        例子:

        mean_image(Image,Mean,21,21)
        dyn_threshold(Image,Mean, RegionDynThresh,15,'dark')

        var_threshold —閾值圖像局部均值和標(biāo)準(zhǔn)差的分析。

        格式:    var_threshold(Image : Region : MaskWidth, MaskHeight, StdDevScale, AbsThreshold, LightDark : ) 

         

        2、基于邊緣的圖像分割:尋找區(qū)域之間的邊界

        watersheds —從圖像中提取分水嶺和盆地。

        格式:    watersheds(Image : Basins, Watersheds : : )

        watersheds_threshold —使用閾值從圖像中提取分水嶺和盆地。

        格式:    watersheds_threshold(Image : Basins : Threshold : )

         

        3、基于區(qū)域的圖像分割:直接創(chuàng)建區(qū)域

         

        三、形態(tài)學(xué)處理

        形態(tài)學(xué)處理以集合運(yùn)算為基礎(chǔ)。

        腐蝕、膨脹、開操作、閉操作是所有形態(tài)學(xué)圖像處理的基礎(chǔ)。

        開操作(先腐蝕再膨脹)使對(duì)象的輪廓變得光滑,斷開狹窄的間斷和消除細(xì)的突出物。

        閉操作(先膨脹再腐蝕)消彌狹窄的間斷和長細(xì)的鴻溝,消除小的孔洞,填補(bǔ)輪廓線的斷裂。

        形體學(xué)基礎(chǔ)算子:

        erosion1 
        dilation1 
        opening 
        closing

        常用的形態(tài)學(xué)相關(guān)算子 
        connection 
        select_shape 
        opening_circle 
        closing_circle 
        opening_rectangle1 
        closing_rectangle1 
        complement 
        difference 
        intersection 
        union1 
        shaps_trans 
        fill_up

        形態(tài)學(xué)高級(jí)算子: 
        boundary 
        skeleton

         

        四、特征提?。?/p>

        1、區(qū)域特征:

        area 
        moments

        smallest_rectangle1

        smallest_circle

        convexity:區(qū)域面積與凸包面積的比例

        contlength:區(qū)域邊界的長度

        compactness

        2、灰度特征

        estimate_noise

        select_gray

         

        五、輸出結(jié)果:

        (1)獲取滿足條件的區(qū)域

        (2)區(qū)域分類,比如OCR

        (3)測(cè)量

        (4)質(zhì)量檢測(cè)


        原文引自:http://www.cnblogs.com/hanzhaoxin/archive/2013/02/15/2912879.html

        向作者致敬!!


             

        聲明:部分內(nèi)容來源于網(wǎng)絡(luò),僅供讀者學(xué)習(xí)、交流之目的。文章版權(quán)歸原作者所有。如有不妥,請(qǐng)聯(lián)系刪除。

        —THE END—

        瀏覽 923
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        評(píng)論
        圖片
        表情
        推薦
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            天天操,夜夜操 | 国内精品久久久久久久星 | 天天日天天目 | 欧美在线观看爆操 | 丁香花无码 | 欧美 中文字幕 | 日韩电影一区二区三区 | www.亚洲色图.com | 嗯啊久久| 水多多成人免费视频在线播放 |