在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

簡述OpenCV中如何提取不規則ROI區域

新機器視覺 ? 來源:OpenCV學堂 ? 作者:OpenCV學堂 ? 2021-05-28 09:16 ? 次閱讀

什么是ROI

ROI是英文Region Of Interest的三個首字母縮寫,很多時候我們對圖像的分析就是對圖像特定ROI的分析與理解,對細胞與醫療圖像來說,ROI提取正確才可以進行后續的分析、測量、計算密度等,而且這些ROI區域往往不是矩形區域,一般都是不規則的多邊形區域,很多OpenCV初學者都不知道如何提取這些不規則的ROI區域。其實OpenCV中有個非常方便的API函數可以快速提取各種非正常的ROI區域。

提取ROI區域

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

可以看出,mask的作用是可以 幫助我們提取各種不規則的區域。OpenCV中完成上述步驟操作只需要簡單調用API函數bitwise_and即可。

于是另外一個問題也隨之而來,我們怎么生成這樣mask區域,答案是在OpenCV中有兩種方法搞定Mask區域生成。

方法一:

通過手動選擇,然后通過多邊形填充即可做到,代碼實現如下:

importcv2ascv importnumpyasnp src=cv.imread("D:/images/gc_test.png") cv.imshow("input",src) h,w,c=src.shape #手工繪制ROI區域 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) #根據mask,提取ROI區域 result=cv.bitwise_and(src,src,mask=mask) cv.imshow("result",result) cv.waitKey(0)

運行效果如下:

方法二:

這個也是OpenCV新手最迷茫的地方,如何通過程序生成mask,其實真的很簡單。看代碼演示吧!

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

效果如下:

主要是分為三步

提取輪廓ROI

生成Mask區域

提取指定輪廓

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

實際應用演示

最后看兩個在實際處理會用到mask實現ROI提取然后重新背景融合之后生成新圖像效果:

編輯:jq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • API
    API
    +關注

    關注

    2

    文章

    1565

    瀏覽量

    63635
  • 代碼
    +關注

    關注

    30

    文章

    4891

    瀏覽量

    70342
  • OpenCV
    +關注

    關注

    32

    文章

    642

    瀏覽量

    42538
  • mask
    +關注

    關注

    0

    文章

    10

    瀏覽量

    3066

原文標題:OpenCV中如何提取不規則ROI區域

文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    Litestar 4D:運動場所照明

    的Dxf文件 ?手動插入單個燈具或燈具組(例如在高桅桿上) ?定義被檢查運動區(籃球場、足球場、手球場等)的特征線 ?通過規則不規則工作平面定義特殊計算區域 ?參數計算: 照度和亮度 眩光 (GR
    發表于 06-17 08:56

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

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

    基于LockAI視覺識別模塊:C++使用圖像的統計信息

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

    基于LockAI視覺識別模塊:C++使用圖像的統計信息

    在圖像處理,統計信息可以幫助我們了解圖像的特性,例如區域內的像素分布、顏色轉換以及特定區域的分析。本文將介紹基于LockAI視覺識別模塊如何提取興趣
    的頭像 發表于 05-08 10:09 ?184次閱讀
    基于LockAI視覺識別模塊:C++使用圖像的統計信息

    邊緣設備的奇妙之旅:在小凌派-RK2206上部署AI模型來實現視覺巡線

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

    為LSDK構建opencv時遇到的問題求解

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

    如何在特定區域設置線寬、線距規則

    “ ?今天偷個懶,分享一個 Hayden 大佬提供的自定義規則,非常實用。可以在特定區域(如BGA器件范圍內)定義特殊的線寬、線距規則。? ” 就是下面這段自定義規則,表示 U10
    的頭像 發表于 03-19 11:20 ?501次閱讀
    如何在特定<b class='flag-5'>區域</b>設置線寬、線距<b class='flag-5'>規則</b>

    芯片設計的設計規則檢查

    設計規則檢查(Design Rule Check,簡稱DRC)是芯片設計的一個關鍵步驟,旨在確保電路設計的物理布局符合制造工藝的要求。可以把它類比為建筑設計的檢查流程,確保建筑圖紙
    的頭像 發表于 03-04 14:58 ?450次閱讀

    ADC3663測電阻兩段電壓,信號在5mV~100mV不規則波動, 可以測嗎?

    ADC3663是差分輸入,我的測試需求是這樣的,可以使用嗎 1. 電源的電壓信號,比如在1V附近不規則變化. 那可以INP端接電源,INM接地嗎 2. 測電阻兩段電壓,信號在5mV~100mV不規則波動, 可以測嗎?
    發表于 11-22 09:48

    簡述MOS管的工作區域

    MOS管(Metal-Oxide-Semiconductor Field-Effect Transistor,金屬-氧化物半導體場效應晶體管)是電子電路中廣泛使用的元件,具有三個主要的工作區域:截止
    的頭像 發表于 09-14 17:10 ?9484次閱讀

    【龍芯2K0300蜂鳥板試用】5 搭建opencv開發環境

    在官方提供的buildroot根文件系統,不支持opencv庫,故需要自己增加,另外,在本地編譯的時候,需要在本地(ubuntu)上安裝對應opencv庫,這樣才能將編譯好的鏡像放到板子上跑起來
    發表于 08-27 15:08

    OpenCV圖像識別C++代碼

    安裝OpenCV庫 首先,您需要在您的計算機上安裝OpenCV庫。您可以從OpenCV官網下載預編譯的庫或從源代碼編譯。安裝完成后,確保將OpenCV的頭文件和庫文件添加到您的項目中。
    的頭像 發表于 07-16 10:42 ?4089次閱讀

    opencv-python和opencv一樣嗎

    不一樣。OpenCV(Open Source Computer Vision Library)是一個開源的計算機視覺和機器學習軟件庫,它提供了大量的圖像和視頻處理功能。OpenCV
    的頭像 發表于 07-16 10:38 ?1981次閱讀

    opencv的主要功能有哪些

    OpenCV(Open Source Computer Vision Library)是一個開源的計算機視覺庫,提供了大量的計算機視覺算法和工具。以下是OpenCV的主要功能: 圖像處理
    的頭像 發表于 07-16 10:35 ?2664次閱讀

    OpenCV攜奧比光3D相機亮相CVPR 2024

    6月17日-21日,奧比光合作伙伴OpenCV攜Orbbec 3D相機參展在美國西雅圖舉辦的CVPR 2024(即IEEE國際計算機視覺與模式識別會議),讓開發者親身體驗Orbbec 3D相機
    的頭像 發表于 06-21 09:38 ?956次閱讀
    主站蜘蛛池模板: 114毛片免费观看网站 | 久久毛片视频 | 亚洲jizzjizz中国妇女 | 伊人网综合在线观看 | h视频在线观看视频观看 | 国产高清视频在线免费观看 | 狠狠色狠狠色综合久久一 | 一区| 美女黄18| 人人草人人插 | 日本一区二区精品88 | 免费在线观看一区二区 | 爽爽爽爽爽爽a成人免费视频 | 日本三级精品 | 在线看片地址 | 新天堂在线 | 亚洲精品亚洲人成毛片不卡 | 久久视频精品线视频在线网站 | 开心激情五月网 | 色老头久久久久 | 亚洲小视频在线播放 | 无内丝袜透明在线播放 | 一区不卡 | 国产网红主播精品福利大秀专区 | 国产午夜a理论毛片在线影院 | wwwxx在线观看 | 在线视频网址免费播放 | japanese色系tube日本护士 | 欧美性free免费 | 四虎影院永久免费 | 一区二区在线免费观看 | 天天摸夜夜摸夜夜狠狠摸 | 国产亚洲精品aaa大片 | 久久久久国产精品免费免费 | 国产一级aa大片毛片 | 三级黄色在线 | 久久99久久99精品免观看 | 147西西人体大胆免费网 | 天天干天天插天天操 | videosxxoo18欧美| 农村妇女高清毛片一级 |