1. 程式人生 > >異形ROI的建立與使用

異形ROI的建立與使用

在OpenCV中,ROI (Region of Interest)是非常重要的機制,它可以縮小影象處理的區域,使得程式的效能明顯提升。如,在1920x720的灰度圖中,模板匹配1個大小為50x50的灰度圖,1G主頻下的執行時間約為1s,但如果提前標定好對應的匹配位置,可以將時間縮短到1-3ms,效能提升極為可觀。
OpenCV中的ROI設定有幾種方式:

  • 使用矩形子影象作為ROI,如:
    Mat _sub = Mat( _img, Rect(x, y, w, h) );
    這個_sub是從 _img中取出的子影象,共享 _img的記憶體,效果如同將下圖中白色區域作為輸入影象進行處理:
  • 使用Mask引數標識ROI
    ,如matchTemplate方法的mask引數:
    void cv::matchTemplate ( InputArray image, InputArray templ, OutputArray result, int method, InputArray mask = noArray() )

OpenCV的一些方法中,並不支援Mask操作,如識別直線的HoughLinesP。而矩形區域相對特定的處理情況下,仍有可能個別被測目標,沿特定軌跡運動,而對應的矩形區域內的干擾較多,導致識別困難,因此引出本文的重點:如何設計一些特殊形狀的Mask,及如何在不支援Mask的OpenCV介面中使用


根據需要建立所需的異形Mask並不難,如下2個影象的Mask,分別採用fillConvexPoly及ellipse即可完成,

在不支援Mask的方法中,使用這樣的Mask則需要使用Mat的Bit And操作符:&。舉個例子如下:

/* _mask after fillConvexPoly or ellipse operation */
HoughLinesP( Mat(_img, _rect) & _mask, lines, 3, CV_PI/60, 30, 30, 5 );

例子中使用的Rectangle形式的ROI再Bit And上生成的異形ROI,提升了效能,減少了干擾,過程就是這麼簡單。

相關推薦

ROI建立使用

在OpenCV中,ROI (Region of Interest)是非常重要的機制,它可以縮小影象處理的區域,使得程式的效能明顯提升。如,在1920x720的灰度圖中,模板匹配1個大小為50x50的灰度圖,1G主頻下的執行時間約為1s,但如果提前標定好對應的匹配

altium designer建立的焊盤的方法圖文教程

一般不規則的焊盤被稱為異型焊盤,典型的有金手指、大型的器件焊盤或者板子上需要新增特殊形狀的銅箔(可以製作一個特殊封裝代替)。如圖27所示,此處我們以一個鍋仔片為例進行說明。 圖27  完整的鍋仔片封裝 1、執行選單命令“Place—Arc(Any Angle)”,放置

鐵血戰士關係 時間線

Alien and Predator Relationship & Timeline 異形VS鐵血戰士編年史 時間線 有人說鐵血戰士和異形是本來沒有半毛錢關係,是被導演們生拉硬拽在一起的。其實,異形和鐵血戰士是天生的一對兒。今天,就給大家講解異形VS鐵血戰士故事的大背景吧,讓你徹底搞懂整個劇情

AltiumDesigner中建立焊盤方法

關於異形焊盤的建立,可參照下面的半圓PAD的製作: 1.新建一個PCB檔案,然後在裡面畫一個半圓的Arc,即Place》Arc,並且要將其開口處封閉,即可用Place》Line封閉 2.選中整個半圓區域,而後執行Tools》Convert》Create Region f

WPF中的柱圖的建立使用

最近,由於專案的需要,做了一個關於WPF中柱形統計圖的Demo,現在拿出來跟大家分享一下。 關於這個Demo,我想先說一點體外話。由於WPF中關於WPF的柱形圖第三方控制元件非常的匱乏,所以為了尋找到一個合適的控制元件,也是花了我很大的力氣。不過,怎麼說功夫不負有心人,終於

河南省第六屆大學生程序設計競賽--

con -s pad space 傳感器 math.h 水題 amp 歷史 異 形 卵 Time Limit: 1 Second Memory Limit: 64 MB Description 我們探索宇宙,是想了解浩瀚星空的奧妙,但我們卻非常少意識到宇宙

如何在VMware系統中的ubuntu16.04中建立win7系統的共享文件夾

alt hgfs vmware 結果 vmw 設置 too 得到 image 點擊虛擬機設置一次得到如圖所示 系統默認放在了 /mnt/hgfs文件夾 點擊虛擬機安裝vmware tools 解壓vmware tools壓縮包 運行sudo ./vmwar

VS2010屬性表的建立靈活運用

如何 新項目 簡化 百度 經驗 table .html 減少 eas 問題引入:在VS2010當中,進行opencv、QT等的編程時,總是需要配置很多屬性還有依賴項等,為了減少每次都重復配置屬性的工作量,現在可以運行屬性表這個東西來簡化配置。opencv也可以這樣建立使

同步步、阻塞非阻塞

阻塞與非阻塞 就會 結束 檢查 通信機制 得到 node 分布 好書 “阻塞”與"非阻塞"與"同步"與“異步"不能簡單的從字面理解,提供一個從分布式系統角度的回答。1.同步與異步同步和異步關註的是消息通信機制 (synchronous communication/ a

WebSocket安卓客戶端實現詳解(一)–連接建立重連

ask 應該 header oid mha 主動推送 未收到 compile tde http://blog.csdn.net/zly921112/article/details/72973054 前言 這裏特別說明下因為WebSocket服務端是公司線上項目所以這裏ur

Python --- 二叉樹的層序建立三種遍歷

隊列 方式 span 等於 不存在 pos 同時 紅色 ret 二叉樹(Binary Tree)時數據結構中一個非常重要的結構,其具有。。。。(此處省略好多字)。。。。等的優良特點。 之前在刷LeetCode的時候把有關樹的題目全部跳過了,(ORZ:我這種連數據結構都不會的

線程和步的分別聯系

調用方法 同步 同步等待 這一 調用 實現 代碼 做自己 我們 多線程:多線程是程序設計的邏輯層概念,它是進程中並發運行的一段代碼。多線程可以實現線程間的切換執行。 異步:異步和同步是相對的,同步就是順序執行,執行完一個再執行下一個,需要等待、協調運行。異步就是彼此獨立,在

【技術文檔】使用ADOMD.NET建立Analysis Services的連接

urn local 環境 .aspx pro lar 進行 ref 包含 C#操作Analysis Services,AMO是Analysis Services的管理類的完整集合,可在托管環境中,在Microsoft.AnalysisServices命名空間下以編程方式使用

同步步,阻塞非阻塞

消息 阻塞 結果 阻塞與非阻塞 過程調用 函數 異步 非阻塞 完成 異步的概念和同步相對。當一個同步調用發出後,調用者要一直等待返回消息(結果)通知後,才能進行後續的執行;當一個異步過程調用發出後,調用者不能立刻得到返回消息(結果)。實際處理這個調用的部件在完成後,通過狀態

[TCP/IP] TCP建立終止

自己的 str color 了解 span 出現 數據包 傳輸層 它的 三次握手與四次揮手     TCP提供一種可靠、面向連接、字節流、傳輸層的服務。TCP是一種面向連接的單播協議。  一個TCP連接由一個4元組構成,它們分別是源IP地址和源端口號,目的IP地址和目的端口

TCP詳解——連接建立斷開

介紹 32bit 標誌位 關閉連接 選擇 tro 窗口大小 syn 重新發送 一、報文結構介紹   在開始講TCP連接過程時,還是先看看TCP報文的格式如圖1所示。IP數據報此時由IP頭部+TCP頭部+TCP數據組成。不帶選項的TCP頭部是20字節長,而帶選項的,TCP頭部

【轉】步傳輸模式同步傳輸模式的區別

傳輸 不返回 面向 等待 機會 間隔 統一 其他 就是 說到異步傳輸模式與同步傳輸模式的區別,首先簡單首先他們各自的意思。 同步傳輸模式中發送方和接收方的時鐘是統一的、字符與字符間的傳輸是同步無間隔的。 異步傳輸模式並不要

【intellij】intellij idea 建立src級別的目錄

dir itl 發現 建立 img r文件 你是 .net .... 在使用三大框架時,通常會把配置文件放在自己新建的config文件夾裏,以便編程。在 myeclipse裏新建的config文件夾是Source Folder屬性的 這樣他的級別適合src一個級別,但是

轉:聊聊同步、步、阻塞非阻塞

AI strong 什麽 商業 同步與異步 好的 等待 不難 兩個 轉載:https://www.jianshu.com/p/aed6067eeac9 近來遇到了一些常見的概念,尤其是網絡編程方面的概念,如:阻塞、非阻塞、異步I/O等等,對於這些概念自己也沒有太清晰的認

建立終止服務器鏈接

鏈接mysql及退出mysql安裝好mysql數據庫之後,如果您是windows系統,您可以通過dos控制臺鏈接mysql.首先進入dos控制臺,開始菜單輸入"cmd",回車;即進入dos命令行窗口。接著,通過"cd"命令切換到安裝mysql的路徑,類如“D:\>