1. 程式人生 > >【Halcon】動態跟蹤一

【Halcon】動態跟蹤一

太久沒有踏上籃球場了,昨天終於酣暢淋漓了一次。雖然被虐、體力跟不上,但卻滿滿激情,喜歡球場上的大家相互間協作、喝彩、拼搶…..愛好,還是需要堅持下去的!

言歸正傳,今天要學習的是利用dual_threshold實現動態跟蹤。
對於該種方法可以引申到簡單摳圖應用等。
1.運算元
對符號影象進行閾值化
dual_threshold(Image : RegionCrossings : MinSize, MinGray, Threshold : )
2.理論
根據Threshold選擇大於Threshold小於Threshold的區域,同時通過設定MinSize來去除一些干擾的小區域。區域的絕對最大灰度值小於MinGray將被直接截斷。

該運算元經常應用於Laplace操作之後,用於邊緣檢測;用於sub_image之後,用於對比兩幅影象差別(本博文所用)。
3.程式碼

 * Threshold operator for signed images
 * 
dev_close_window ()
read_image (Traffic1, 'traffic1')
read_image (Traffic2, 'traffic2')
convert_image_type (Traffic1, ImageConverted1, 'int2')
convert_image_type (Traffic2, ImageConverted2, 'int2'
) * Subtract two images. sub_image (ImageConverted1, ImageConverted2, ImageSub, 1, 0) dual_threshold (ImageSub, RegionDiff, 500, 20, 10) get_image_size (Traffic1, Width, Height) dev_open_window (0, 0, 2 * Width, 2 * Height, 'black', WindowHandle) set_display_font (WindowHandle, 14, 'mono', 'true', 'false'
) dev_set_part (0, 0, Height - 1, Width - 1) dev_set_draw ('margin') dev_set_colored (6) dev_display (Traffic1) dev_display (RegionDiff) disp_continue_message (WindowHandle, 'black', 'true') stop () * Select regions based on gray value features select_gray (RegionDiff, Traffic1, SelectedRegions, 'deviation', 'and', 20, 255) dilation_circle (SelectedRegions, RegionDilation, 1.5) reduce_domain (Traffic1, RegionDilation, ImageReduced) binary_threshold (ImageReduced, Region, 'max_separability', 'dark', UsedThreshold) * Transform the shape of a region. shape_trans (Region, RegionTrans, 'convex') dev_set_draw ('margin') dev_set_colored (6) dev_display (Traffic1) dev_display (RegionTrans)

4.結果
* traffic1

Image1

  • traffic2
    這裡寫圖片描述

  • 結果圖
    這裡寫圖片描述
    5.其他運算元
    1.轉換影象資料型別
    convert_image_type(Image : ImageConverted : NewType : )
    這裡寫圖片描述
    2.影象作差
    sub_image(ImageMinuend, ImageSubtrahend : ImageSub : Mult, Add : )
    這裡寫圖片描述
    這裡寫圖片描述
    這裡寫圖片描述
    5.參考
    1.Halcon官方參考文件

相關推薦

Halcon動態跟蹤

太久沒有踏上籃球場了,昨天終於酣暢淋漓了一次。雖然被虐、體力跟不上,但卻滿滿激情,喜歡球場上的大家相互間協作、喝彩、拼搶…..愛好,還是需要堅持下去的! 言歸正傳,今天要學習的是利用dual_th

bzoj3295動態逆序對

== 數據結構 aps img src zoj none fin 結果 我怎麽控制不住自己又寫了個數據結構啊……真是的…… 其實我是想練CDQ分治的……結果忍不住又寫了個主席樹。 首先看看不動態的逆序對咋做?樹狀數組嘛。 那麽刪除咋搞?就是考慮貢獻,把它前面比他大的,後面

java簡介(

編碼 http ... 設計 適合 不能 高度 代碼格式 操作系統 應用:web後端開發、android-app開發、大數據應用開發 學習:java會過時,但程序設計的思想不會過時 特點:1、面向對象,跨平臺,語法比c++簡單     2、以字節碼的形式運行在虛擬機上   

DWM1000 code 解密 工程初始化代碼分析

eof associate 回調函數 pre ack 也有 tca use fas Draft ,以後整理 instance_init 函數追下去,絕大多數的代碼都在初始化如下結構體 typedef struct { INST_MODE mode; instan

DWM1000 code 解密 ANCHOR 二進宮testapprun_s

分析 adding 這一 tab flag 接受 comm hand 情況 ANCHOR 二進宮 上面我們的代碼分析到ANCHOR 調用了一次testapprun_s,但是後面退出後發現還是滿足while 條件,逼不得已還得再次調用testapprun_s。testappr

經典動態規劃

答案 意思 行修改 優化 待修改 最長 長度 u+ mem 五道經典動態規劃問題1)最大子序列和題目描述:一個序列,選和最大的子序列轉移方程:sum[i]=max{sum[i-1]+a[i],a[i]}當前元素的狀態是:自己單獨一組還是並到前面最後的答案max{sum[i]

Foreign動態規劃 [分治][DP]

tex oid ans script 決策 cst pen 因此 out 動態規劃   Time Limit: 50 Sec Memory Limit: 128 MB Description   一開始有n個數,一段區間的價值為這段區間相同的數的對數。  我們想

動態樹入門

blade 查詢 body lin class 線段樹 ref bsp 狀態 背景 樹剖大概算是入門了,樹上亂搞系列(直徑,重心,樹剖,分治,倍增等)可以說都是一種思想,一種手段,而不是一種數據結構。 樹剖通過樹上面劃分鏈,在鏈上靜態操作(使用線段樹,樹狀態數組,主席樹

Linux基礎每日命之sed命令

標準 tin .... ddr 一行 inet6 修改文件 方法 兩個 sed命令是利用script來處理文件 sed可依照script的指令,來處理、編輯文本文件。sed主要用來自動編輯一個或多個文件;簡化對文件的反復操作;編寫轉換程序等 語法:sed [-hnV][-e

Linux基礎每日命之awk命令(上)

設置變量 兩個 oob 每日 gin water 不能 -o source awk 是一個強大的文本分析工具 語法:awk [選項參數] ‘script‘ var=value file(s)或awk [選項參數] -f scriptfile var=value file(s

Linux基礎每日命之cut&mv&scp命令

默認 令行 密碼 文件拷貝 字段 提取 ace com 命令格式 cut命令 用於顯示每行從開頭算起num1到num2的文字 語法:cut [-bn] [file]cut [-c] [file]cut [-df] [file] 使用說明:cut 命令從文件的每一行剪切字節

Linux基礎每日命之useradd&groupadd

-c 指定 實例 添加 備註 passwd 每日 所屬組 配置文件 useradd命令用於建立用戶賬號 useradd可用來建立用戶帳號。帳號建好之後,再用passwd設定帳號的密碼.而可用userdel刪除帳號。使用useradd指令所建立的帳號,實際上是保存在/etc/

Python編程:從入門到實踐——作業——第十章(測試代碼)

stc 增加 收集 得到 width .com ast 接受 ted 第十一章 11-1 城市和國家 : 編寫一個函數, 它接受兩個形參: 一個城市名和一個國家名。 這個函數返回一個格式為City, Country 的字符串, 如Santiago, Chile 。 將這個函

Redis入門就這篇!

弊端 use total 嚴重 之一 sts 內存條 秒殺 DC Redis 概述 在我們日常的Java Web開發中,無不都是使用數據庫來進行數據的存儲,由於一般的系統任務中通常不會存在高並發的情況,所以這樣看起來並沒有什麽問題,可是一旦涉及大數據量的需求,比如一些商品

轉載動態生成html元素並為元素追加屬性

追加內容 min utf-8 color meta rep lin type ctype 動態生成HTML元素的方法有三種: 第一種:document.createElement()創建元素,再用appendChild( )方法將元素添加到指定節點 1 <!DOC

學習reactjs()——使用npm創建react項目並整合elementUI

web -s from 頁面 rain tle export build head 在實習的過程中了解了react,所以打算使用react搭建一個屬於自己的頁面,如有問題請教正,謝謝。 Github:https://github.com/yclxt/react-elemen

LeetCode動態規劃(上篇共75題)

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica } 【5】 Longest Palindromic Substring 給一個字串,需要返回最長迴文子串 解法:dp[i][j] 表示 s[i..j] 是否是迴文串,轉移方程是

Android動態連結庫so的載入原理

前言 最近開發的元件時常出現了執行時載入so庫失敗問題,每天都會有java.lang.UnsatisfiedLinkError的錯誤爆出來,而且線上總是偶然復現,很疑惑。所以本文將從AOSP原始碼簡單跟蹤Android中的動態連結庫so的載入原理,試圖找出一絲線索。 載入入口

練習題第十章--字典(Think python)

字典 字典包括一系列的索引,不過就已經不叫索引了,而是叫鍵(Key),然後還對應著一個個值,就叫鍵值(Key Value)。每個鍵對應著各自的一個單獨的鍵值。這種鍵和鍵值的對應關係也叫鍵值對,有時候也叫項。 這種輸出的格式也可以用來輸入。比如你可以這樣建立一個有三個項的字典: >&

轉載JVM系列:JVM記憶體組成及分配

java記憶體組成介紹:堆(Heap)和非堆(Non-heap)記憶體        按照官方的說法:“Java 虛擬機器具有一個堆,堆是執行時資料區域,所有類例項和陣列的記憶體均從此處分配。堆是在 Java 虛擬機器啟動時建立的。”“在JVM中堆