HALCON示例程序rim.hdev輪圈孔檢測提取字符

小哥哥小姐姐覺得有用點個贊唄!在這里插入圖片描述

HALCON示例程序rim.hdev輪圈孔檢測提取字符

示例程序源碼(加注釋)

  • 關于顯示類函數解釋
    dev_update_off ()
    dev_close_window ()
    dev_open_window (0, 0, 768, 576, ‘black’, WindowID)
    set_display_font (WindowID, 16, ‘mono’, ‘true’, ‘false’)
    read_image (Rim, ‘rim’)
    dev_display (Rim)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 二值化
    threshold (Rim, Dark, 0, 128)
    dev_display (Rim)
    dev_set_color (‘green’)
    dev_set_draw (‘fill’)
    dev_display (Dark)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 分割連通域
    connection (Dark, DarkRegions)
  • 使用圓度與面積篩選區域
    select_shape (DarkRegions, Circles, [‘circularity’,‘area’], ‘and’, [0.85,50], [1.0,99999])
    dev_display (Rim)
    dev_set_colored (12)
    dev_display (Circles)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 使用圓形膨脹
    dilation_circle (Circles, ROIOuter, 8.5)
  • 使用圓形腐蝕
    erosion_circle (Circles, ROIInner, 8.5)
  • 求不同
    difference (ROIOuter, ROIInner, ROI)
  • 合并區域
    union1 (ROI, ROIEdges)
    dev_display (Rim)
    dev_set_draw (‘margin’)
    dev_set_line_width (3)
    dev_set_color (‘green’)
    dev_display (ROIEdges)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 縮減定義域,求取邊緣
    reduce_domain (Rim, ROIEdges, RimReduced)
    edges_sub_pix (RimReduced, Edges, ‘canny’, 4, 20, 40)
  • 篩選邊緣
    select_contours_xld (Edges, RelEdges, ‘length’, 30, 999999, 0, 0)
    dev_display (Rim)
    dev_set_colored (12)
    dev_display (RelEdges)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 擬合橢圓
    fit_ellipse_contour_xld (RelEdges, ‘ftukey’, -1, 2, 0, 200, 3, 2, Row, Column, Phi, Ra, Rb, StartPhi, EndPhi, PointOrder)
    display_ellipses (Rim, Row, Column, Phi, Ra, Rb, WindowID)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 使用高斯平滑濾波
    gauss_filter (Rim, RimGauss, 11)
  • 動態閾值分割區域
    dyn_threshold (Rim, RimGauss, SmallAndDarkerRegion, 5, ‘dark’)
    dev_display (Rim)
    dev_set_draw (‘fill’)
    dev_set_color (‘green’)
    dev_display (SmallAndDarkerRegion)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 分割連通域
    connection (SmallAndDarkerRegion, SmallAndDarker)
  • 通過面積篩選區域
    select_shape (SmallAndDarker, CharCandidates, ‘area’, ‘and’, 40, 400)
  • 使用長短軸篩選區域
    select_shape (CharCandidates, PossibleChar, [‘ra’,‘rb’], ‘and’, [10,5], [20,30])
    dev_display (Rim)
    dev_set_colored (12)
    dev_display (PossibleChar)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 合并區域
    union1 (PossibleChar, ROI)
  • 使用圓形元素進行閉運算
    closing_circle (ROI, CharRegion, 17.5)
  • 分割連通域
    connection (CharRegion, CharBlocks)
    dev_display (Rim)
    dev_set_draw (‘margin’)
    dev_display (CharBlocks)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 使用面積對區域進行篩選
    select_shape (CharBlocks, CharRegion, ‘area’, ‘and’, 400, 99999)
  • 對區域進行型轉變換,求取最小外接矩形
    shape_trans (CharRegion, ROIChar, ‘rectangle2’)
    dev_display (Rim)
    dev_set_color (‘green’)
    dev_display (ROIChar)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
    display_ellipses (Rim, Row, Column, Phi, Ra, Rb, WindowID)
  • 求取交集
    intersection (CharCandidates, ROIChar, Characters)
    dev_set_colored (12)
    dev_display (Characters)
  • 求最小外接矩形
    smallest_rectangle2 (ROIChar, RowChar, ColumnChar, PhiChar, Length1Char, Length2Char)
  • 創建標準轉換矩陣
    hom_mat2d_identity (HomMat2DIdentity)
  • 旋轉
    hom_mat2d_rotate (HomMat2DIdentity, rad(180) - PhiChar, RowChar, ColumnChar, HomMat2DRotate)
  • 平移
    affine_trans_region (Characters, CharRotated, HomMat2DRotate, ‘constant’)
  • 進行仿射變換
    affine_trans_image (Rim, RimRotated, HomMat2DRotate, ‘weighted’, ‘false’)
    dev_open_window (0, 800, 192, 144, ‘black’, WindowChar)
  • 合并區域
    union1 (CharRotated, CharRotatedAll)
  • 求區域最小外接矩形
    smallest_rectangle1 (CharRotatedAll, Row1, Column1, Row2, Column2)
    ZoomHeight := Row2 - Row1 + 1
    ZoomWidth := Column2 - Column1 + 1
    ZoomFactor := min([768 / ZoomWidth,576 / ZoomHeight])
    ZoomRow := (Row1 + Row2) / 2
    ZoomColumn := (Column1 + Column2) / 2
    dev_set_part (ZoomRow - 576 / ZoomFactor / 2, ZoomColumn - 768 / ZoomFactor / 2, ZoomRow + 576 / ZoomFactor / 2 - 1, ZoomColumn + 768 / ZoomFactor / 2 - 1)
    dev_display (RimRotated)
    dev_set_draw (‘fill’)
    dev_set_colored (12)
    dev_display (CharRotated)

處理思路

這個例子是主要講解了使用blob方法進行孔洞測量;使用動態閾值進行字符區域提取。

后記

大家有什么問題可以向我提問哈,我看到了第一時間回復,希望在學習的路上多多結交良師益友。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/254917.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/254917.shtml
英文地址,請注明出處:http://en.pswp.cn/news/254917.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Jquery 全選、反選問題解析

最近工作中&#xff0c;需要使用Jquery實現復選框的全選和反選&#xff0c;本人雖然不是專職擼前端的&#xff0c;但這個小問題感覺也沒什么難度&#xff0c;下面直接上代碼&#xff1a; <div id"list"> <ul class"mui-table-view textOverflow"…

分層

1. UI&#xff08;用戶層&#xff09;&#xff0c;BLL&#xff08;業務邏輯層&#xff09;&#xff0c;DAL&#xff08;數據訪問層&#xff09;. UI是用來顯示的&#xff0c;比如說一些顯示的樣式還有界面設計。 BLL是用來處理業務邏輯的問題。 DAL是和數據庫打交道的。 2.數…

德國汽車廠發生機器人殺人事件 人機協作是大勢所趨

OFweek機器人網訊&#xff1a;《金融時報》報道稱&#xff0c;德國大眾汽車制造廠中一個機器人殺死了一名人類工作人員。當時這名21歲的工人正在安裝和調制機器人&#xff0c;后者突然“出手”擊中工人的胸部&#xff0c;并將其碾壓在金屬板上。這名工人當場死亡。 調查人員正對…

H264 視頻文件 幀格式 傳輸封裝等 雜碎

H264 視頻文件 幀格式 傳輸封裝等 雜碎 rfc3984 Standards Track [Page 2] RFC 3984 RTP Payload Format for H.264 Video February 2005 1. 按照RFC3984協議實現H264視頻流媒體nalu單元 包起始 0x 00 00 00 01H&#xff0e;264 NAL格式及分析器http://hi.baidu.com/zsw%5Fdavy…

Tomcat 調優及 JVM 參數優化

Tomcat 的缺省配置是不能穩定長期運行的&#xff0c;也就是不適合生產環境&#xff0c;它會死機&#xff0c;讓你不斷重新啟動&#xff0c;甚至在午夜時分喚醒你。對于操作系統優化來說&#xff0c;是盡可能的增大可使用的內存容量、提高CPU 的頻率&#xff0c;保證文件系統的讀…

HALCON示例程序sequence_diff.hdev通過兩張連續圖像進行車輛流量監控

小哥哥小姐姐覺得有用點個贊唄&#xff01; HALCON示例程序sequence_diff.hdev通過兩張連續圖像進行車輛流量監控 示例程序源碼&#xff08;加注釋&#xff09; 關于顯示類函數解釋 Thresh : 35 dev_update_window (‘off’) dev_update_pc (‘off’) dev_update_var (‘of…

PID與伺服驅動器

1、開環控制系統 開環控制系統(open-loop control system)是指被控對象 (被控量)對控制器(controller)的輸出沒有影響。在這種控制系統中&#xff0c;不依賴將被控量反送回來以形成任何閉環回路。 2、閉環控制系統 閉環控制系統(closed-loop control system)的特點是系統被控…

最新IP數據庫 存儲優化 查詢性能優化 每秒解析上千萬

高性能IP數據庫格式詳解每秒解析1000多萬ip qqzeng-ip-ultimate.dat 3.0版編碼&#xff1a;UTF8 字節序&#xff1a;Little-Endian 返回規范字段&#xff08;如&#xff1a;亞洲|中國|香港|九龍|油尖旺|新世界電訊|810200|Hong Kong|HK|114.17495|22.327115&#xff09; -…

HALCON示例程序stamp_catalogue.hdev分割圖片與文字

小哥哥小姐姐覺得有用點個贊唄&#xff01; HALCON示例程序stamp_catalogue.hdev分割圖片與文字 示例程序源碼&#xff08;加注釋&#xff09; 關于顯示類函數解釋 gen_rectangle1 (Rect, 0, 0, 5, 5) dev_update_var (‘off’) dev_update_window (‘off’) dev_close_win…

[BZOJ]1023: [SHOI2008]cactus仙人掌圖

Time Limit: 1 Sec Memory Limit: 162 MB Description 如果某個無向連通圖的任意一條邊至多只出現在一條簡單回路&#xff08;simple cycle&#xff09;里&#xff0c;我們就稱這張圖為仙人掌圖&#xff08;cactus&#xff09;。所謂簡單回路就是指在圖上不重復經過任何一個頂…

實現RTP協議的H.264視頻傳輸系統

1. 引言 隨著信息產業的發展&#xff0c;人們對信息資源的要求已經逐漸由文字和圖片過渡到音頻和視頻&#xff0c;并越來越強調獲取資源的實時性和互動性。但人們又面臨著另外一種不可避免的尷尬&#xff0c;就是在網絡上看到生動清晰的媒體演示的同時&#xff0c;不得…

機器人網首頁應用實例工業自動化 EtherCAT 技術在庫卡機器人控制系統上的應用

自 2010 年以來&#xff0c;庫卡一直采用 EtherCAT 技術作為所有庫卡機器人控制系統中的系統總線。最新的 KR AGILUS 機器人和 LBR iiwa 輕型機器人的緊湊型控制器也是在 EtherCAT 基礎上實施的。Beckhoff 基于工業以太網的 EtherCAT因而可以作為整個當前庫卡控制系統范圍內的…

KVM虛擬機共享存儲動態遷移與冷遷移

運行環境一、 配置nfs共享服務器二、 配置KVM虛擬化三、 創建橋接網卡四、 配置kvm服務器并實現動態遷移五、 配置冷遷移運行環境KVM虛擬機兩臺&#xff08;linux 7.4&#xff09;IP地址&#xff1a;192.168.80.100&#xff08;KVM01&#xff09;IP地址&#xff1a;192.168.80.…

HALCON示例程序surface_scratch.hdev提取劃痕

小哥哥小姐姐覺得有用點個贊唄&#xff01; HALCON示例程序surface_scratch.hdev提取劃痕 示例程序源碼&#xff08;加注釋&#xff09; 關于顯示類函數解釋 dev_update_off () dev_close_window () read_image (Image, ‘surface_scratch’) get_image_size (Image, Width…

MySQL--SQL中的安全問題

---恢復內容開始--- 1) SQL 注入簡介 SQL 注入(SQL Injection) 就是利用某些數據庫的外部接口將用戶數據插入到實際的數據庫操作語言(SQL)當中&#xff0c;從而達到入侵數據庫乃至操作系統的目的。他的產生主要是由程序對用戶輸入的數據沒有進行嚴格的過濾&#xff0c;導致非法…

伺服驅動器的 三環控制 電流環 速度環 位置環

運動伺服一般都是三環控制系統&#xff0c;從內到外依次是電流環速度環位置環。 1、電流環&#xff1a;電流環的輸入是速度環PID調節后的那個輸出&#xff0c;我們稱為“電流環給定”吧&#xff0c;然后呢就是電流環的這個給定和“電流環的反饋”值進行比較后的差值在電流環內做…

理解LSTM/RNN中的Attention機制

轉自&#xff1a;http://www.jeyzhang.com/understand-attention-in-rnn.html&#xff0c;感謝分享&#xff01; 導讀 目前采用編碼器-解碼器 (Encode-Decode) 結構的模型非常熱門&#xff0c;是因為它在許多領域較其他的傳統模型方法都取得了更好的結果。這種結構的模型通常將…

linux下基于jrtplib庫的實時傳送實現

linux 下基于jrtplib庫的實時傳送實現一、RTP 是進行實時流媒體傳輸的標準協議和關鍵技術實時傳輸協議&#xff08;Real-time Transport Protocol&#xff0c;PRT&#xff09;是在 Internet 上處理多媒體數據流的一種網絡協議&#xff0c;利用它能夠在一對一&#xff08;unicas…

[BZOJ2326] [HNOI2011] 數學作業 (矩陣乘法)

Description Input Output Sample Input Sample Output HINT Source Solution 遞推式長這樣&#xff1a;$f[n]f[n-1]*10^kn$ 對于每一段位數個數相同的$n$&#xff08;如$10\sim99,100\sim999,23333\sim66666,1018701389\sim2147483647$&#xff09;&#xff0c;$k$是個定值 然…

HALCON示例程序texture.hdev檢測樹木

小哥哥小姐姐覺得有用點個贊唄&#xff01; HALCON示例程序texture.hdev檢測樹木 示例程序源碼&#xff08;加注釋&#xff09; 關于顯示類函數解釋 dev_close_window () Interactive : 0 dev_close_window () read_image (MreutHill, ‘mreut_y’) get_image_size (MreutH…