91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

簡(jiǎn)述OpenCV中如何提取不規(guī)則ROI區(qū)域

新機(jī)器視覺(jué) ? 來(lái)源:OpenCV學(xué)堂 ? 作者:OpenCV學(xué)堂 ? 2021-05-28 09:16 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

什么是ROI

ROI是英文Region Of Interest的三個(gè)首字母縮寫(xiě),很多時(shí)候我們對(duì)圖像的分析就是對(duì)圖像特定ROI的分析與理解,對(duì)細(xì)胞與醫(yī)療圖像來(lái)說(shuō),ROI提取正確才可以進(jìn)行后續(xù)的分析、測(cè)量、計(jì)算密度等,而且這些ROI區(qū)域往往不是矩形區(qū)域,一般都是不規(guī)則的多邊形區(qū)域,很多OpenCV初學(xué)者都不知道如何提取這些不規(guī)則的ROI區(qū)域。其實(shí)OpenCV中有個(gè)非常方便的API函數(shù)可以快速提取各種非正常的ROI區(qū)域。

提取ROI區(qū)域

在做這個(gè)之前,首先來(lái)了解一下什么圖像處理中的mask(遮罩),OpenCV中是如此定義Mask的:八位單通道的Mat對(duì)象,每個(gè)像素點(diǎn)值為零或者非零區(qū)域。當(dāng)Mask對(duì)象添加到圖像區(qū)上時(shí),只有非零的區(qū)域是可見(jiàn),Mask中所有像素值為零與圖像重疊的區(qū)域就會(huì)不可見(jiàn),也就是說(shuō)Mask區(qū)域的形狀與大小直接決定了你看到最終圖像的大小與形狀。一個(gè)具體的示例如下:

可以看出,mask的作用是可以 幫助我們提取各種不規(guī)則的區(qū)域。OpenCV中完成上述步驟操作只需要簡(jiǎn)單調(diào)用API函數(shù)bitwise_and即可。

于是另外一個(gè)問(wèn)題也隨之而來(lái),我們?cè)趺瓷蛇@樣mask區(qū)域,答案是在OpenCV中有兩種方法搞定Mask區(qū)域生成。

方法一:

通過(guò)手動(dòng)選擇,然后通過(guò)多邊形填充即可做到,代碼實(shí)現(xiàn)如下:

importcv2ascv importnumpyasnp src=cv.imread("D:/images/gc_test.png") cv.imshow("input",src) h,w,c=src.shape #手工繪制ROI區(qū)域 mask=np.zeros((h,w),dtype=np.uint8) x_data=np.array([124,169,208,285,307,260,175]) y_data=np.array([205,124,135,173,216,311,309]) pts=np.vstack((x_data,y_data)).astype(np.int32).T cv.fillPoly(mask,[pts],(255),8,0) cv.imshow("mask",mask) #根據(jù)mask,提取ROI區(qū)域 result=cv.bitwise_and(src,src,mask=mask) cv.imshow("result",result) cv.waitKey(0)

運(yùn)行效果如下:

方法二:

這個(gè)也是OpenCV新手最迷茫的地方,如何通過(guò)程序生成mask,其實(shí)真的很簡(jiǎn)單??创a演示吧!

src=cv.imread("D:/images/gc_test.png") cv.imshow("input",src) #生成mask區(qū)域 hsv=cv.cvtColor(src,cv.COLOR_BGR2HSV) mask=cv.inRange(hsv,(156,43,46),(180,255,255)) cv.imshow("mask",mask) #提取ROI區(qū)域,根據(jù)mask result=cv.bitwise_and(src,src,mask=mask) cv.imshow("result",result) cv.waitKey(0)

效果如下:

主要是分為三步

提取輪廓ROI

生成Mask區(qū)域

提取指定輪廓

特別需要注意的是->其中生成Mask可以根據(jù)輪廓、二值化連通組件分析、inRange等處理方法得到。這里基于inRange方式得到mask區(qū)域,然后提取。

實(shí)際應(yīng)用演示

最后看兩個(gè)在實(shí)際處理會(huì)用到mask實(shí)現(xiàn)ROI提取然后重新背景融合之后生成新圖像效果:

編輯:jq

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • API
    API
    +關(guān)注

    關(guān)注

    2

    文章

    2368

    瀏覽量

    66758
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4968

    瀏覽量

    73960
  • OpenCV
    +關(guān)注

    關(guān)注

    33

    文章

    652

    瀏覽量

    44786
  • mask
    +關(guān)注

    關(guān)注

    0

    文章

    10

    瀏覽量

    3224

原文標(biāo)題:OpenCV中如何提取不規(guī)則ROI區(qū)域

文章出處:【微信號(hào):vision263com,微信公眾號(hào):新機(jī)器視覺(jué)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    倍加福區(qū)域型反射板式光電傳感器的應(yīng)用優(yōu)勢(shì)

    在物流、物料輸送或包裝行業(yè),可靠的物體檢測(cè)對(duì)流程順暢運(yùn)行有重要影響。傳統(tǒng)上會(huì)采用反射板式傳感器完成此任務(wù)。由于其采用單點(diǎn)光束工作,傳統(tǒng)反射板式傳感器在某些應(yīng)用存在局限。而倍加福R305反射板式區(qū)域傳感器采用寬廣的光帶,有助于檢測(cè)不規(guī)則
    的頭像 發(fā)表于 12-13 15:30 ?1847次閱讀

    沒(méi)有專(zhuān)利的opencv-python 版本

    所有 官方發(fā)布的 opencv-python 核心版本(無(wú) contrib 擴(kuò)展)都無(wú)專(zhuān)利風(fēng)險(xiǎn)——專(zhuān)利問(wèn)題僅存在于 opencv-contrib-python 擴(kuò)展模塊的少數(shù)算法(如早期 SIFT
    發(fā)表于 12-13 12:37

    倍加福全新推出R305反射板式區(qū)域傳感器

    在工業(yè)自動(dòng)化領(lǐng)域,準(zhǔn)確可靠的物體檢測(cè)是實(shí)現(xiàn)高效生產(chǎn)的關(guān)鍵基石。倍加福全新推出的R305反射板式區(qū)域傳感器,現(xiàn)可穩(wěn)定檢測(cè)高度僅2毫米的不規(guī)則形狀物體,為多種復(fù)雜應(yīng)用場(chǎng)景提供高靈活性解決方案。
    的頭像 發(fā)表于 11-07 17:59 ?1254次閱讀

    零成本鋼鐵俠手套!樹(shù)莓派+OpenCV 秒變手勢(shì)遙控器!

    大家好,這是一個(gè)樹(shù)莓派和OpenCV的連載專(zhuān)題。使用樹(shù)莓派與OpenCV實(shí)現(xiàn)姿態(tài)估計(jì)和面部特征點(diǎn)追蹤使用樹(shù)莓派與OpenCV實(shí)現(xiàn)面部和運(yùn)動(dòng)追蹤的云臺(tái)系統(tǒng)使用樹(shù)莓派和OpenCV實(shí)現(xiàn)手部
    的頭像 發(fā)表于 08-16 16:16 ?1270次閱讀
    零成本鋼鐵俠手套!樹(shù)莓派+<b class='flag-5'>OpenCV</b> 秒變手勢(shì)遙控器!

    如何使用樹(shù)莓派與OpenCV實(shí)現(xiàn)面部和運(yùn)動(dòng)追蹤的云臺(tái)系統(tǒng)?

    大家好,這是一個(gè)樹(shù)莓派和OpenCV的連載專(zhuān)題。使用樹(shù)莓派與OpenCV實(shí)現(xiàn)姿態(tài)估計(jì)和面部特征點(diǎn)追蹤使用樹(shù)莓派與OpenCV實(shí)現(xiàn)面部和運(yùn)動(dòng)追蹤的云臺(tái)系統(tǒng)使用樹(shù)莓派和OpenCV實(shí)現(xiàn)手部
    的頭像 發(fā)表于 08-14 17:45 ?1566次閱讀
    如何使用樹(shù)莓派與<b class='flag-5'>OpenCV</b>實(shí)現(xiàn)面部和運(yùn)動(dòng)追蹤的云臺(tái)系統(tǒng)?

    找正方形的代碼我把roi刪除過(guò)后能識(shí)別到正方形,加上roi后就識(shí)別不出來(lái),為什么?

    找正方形的代碼我把roi刪除過(guò)后能識(shí)別到正方形,加上roi后就識(shí)別不出來(lái),更改roi為更大更穩(wěn)定的范圍也識(shí)別不到,麻煩解答一下,謝謝
    發(fā)表于 08-14 06:23

    【GM-3568JHF開(kāi)發(fā)板免費(fèi)體驗(yàn)】OpenCV開(kāi)發(fā)環(huán)境安裝和計(jì)數(shù)程序開(kāi)發(fā)

    ,所以程序 要先將彩色圖像轉(zhuǎn)成灰度圖像,是圖像的物品更為明顯,從而根據(jù)色差識(shí)別輪廓區(qū)域,有幾個(gè)輪廓區(qū)域就代表有幾個(gè)物品或動(dòng)物。
    發(fā)表于 08-09 13:30

    【GM-3568JHF開(kāi)發(fā)板免費(fèi)體驗(yàn)】OpenCV 視頻目標(biāo)跟蹤 ( CamShift)

    目標(biāo)區(qū)域的質(zhì)心。 3)移動(dòng)窗口:將窗口中心移動(dòng)到質(zhì)心位置。 4)調(diào)整窗口大小和方向:根據(jù)目標(biāo)的尺寸和方向調(diào)整窗口。 5)迭代:重復(fù)步驟 2 到 4,直到窗口中心不再變化或達(dá)到最大迭代次數(shù)。 OpenCV
    發(fā)表于 08-09 13:19

    Litestar 4D:運(yùn)動(dòng)場(chǎng)所照明

    的Dxf文件 ?手動(dòng)插入單個(gè)燈具或燈具組(例如在高桅桿上) ?定義被檢查運(yùn)動(dòng)區(qū)(籃球場(chǎng)、足球場(chǎng)、手球場(chǎng)等)的特征線(xiàn) ?通過(guò)規(guī)則不規(guī)則工作平面定義特殊計(jì)算區(qū)域 ?參數(shù)計(jì)算: 照度和亮度 眩光 (GR
    發(fā)表于 06-17 08:56

    KiCad 的自定義規(guī)則(KiCon 演講)

    “ ?Seth Hillbrand 在 KiCon US 2025 上為大家介紹了 KiCad 的規(guī)則系統(tǒng),并詳細(xì)講解了自定義規(guī)則的設(shè)計(jì)與實(shí)例。? ” ? 演講主要圍繞 加強(qiáng) KiCad 的自定義
    的頭像 發(fā)表于 06-16 11:17 ?2129次閱讀
    KiCad <b class='flag-5'>中</b>的自定義<b class='flag-5'>規(guī)則</b>(KiCon 演講)

    基于LockAI視覺(jué)識(shí)別模塊:C++使用圖像的統(tǒng)計(jì)信息

    和最大值:幫助識(shí)別圖像的極端像素值及其位置。 2.API文檔 2.1 頭文件 #include <opencv2/opencv.hpp> 2.2 提取興趣
    發(fā)表于 05-08 10:31

    基于LockAI視覺(jué)識(shí)別模塊:C++使用圖像的統(tǒng)計(jì)信息

    在圖像處理,統(tǒng)計(jì)信息可以幫助我們了解圖像的特性,例如區(qū)域內(nèi)的像素分布、顏色轉(zhuǎn)換以及特定區(qū)域的分析。本文將介紹基于LockAI視覺(jué)識(shí)別模塊如何提取興趣
    的頭像 發(fā)表于 05-08 10:09 ?739次閱讀
    基于LockAI視覺(jué)識(shí)別模塊:C++使用圖像的統(tǒng)計(jì)信息

    邊緣設(shè)備的奇妙之旅:在小凌派-RK2206上部署AI模型來(lái)實(shí)現(xiàn)視覺(jué)巡線(xiàn)

    ; } // 提取ROI區(qū)域,并轉(zhuǎn)換到HSV色彩空間 cv::Mat roi_image = temp_mat(roi_rect); cv
    發(fā)表于 03-31 10:58

    為L(zhǎng)SDK構(gòu)建opencv時(shí)遇到的問(wèn)題求解

    我正在嘗試使用 flex-builder 來(lái)運(yùn)行 bld -c opencv -r ubuntu:桌面 我想要最新版本的 OpenCV。在我的 sdk.yml 文件,我將 opencv
    發(fā)表于 03-26 08:26

    如何在特定區(qū)域設(shè)置線(xiàn)寬、線(xiàn)距規(guī)則

    “ ?今天偷個(gè)懶,分享一個(gè) Hayden 大佬提供的自定義規(guī)則,非常實(shí)用??梢栽谔囟?b class='flag-5'>區(qū)域(如BGA器件范圍內(nèi))定義特殊的線(xiàn)寬、線(xiàn)距規(guī)則。? ” 就是下面這段自定義規(guī)則,表示 U10
    的頭像 發(fā)表于 03-19 11:20 ?1289次閱讀
    如何在特定<b class='flag-5'>區(qū)域</b>設(shè)置線(xiàn)寬、線(xiàn)距<b class='flag-5'>規(guī)則</b>