最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python圖像處理之使用OpenCV檢測對象顏色

 更新時(shí)間:2022年12月20日 10:07:23   作者:AI?technophile  
OpenCV顏色檢測只是一個(gè)起點(diǎn),最終目標(biāo)是最終使用Python?3代碼在視頻流幀中定位彩色元素位置,下面這篇文章主要給大家介紹了關(guān)于Python圖像處理之使用OpenCV檢測對象顏色的相關(guān)資料,需要的朋友可以參考下

前言

檢測圖像中對象顏色的一種簡單方法是首先將圖像從 RGB 轉(zhuǎn)換為 HSV 顏色空間,然后使用一系列色調(diào)檢測對象,這可以通過使用 OpenCV 庫輕松完成。為了完成對象檢測任務(wù),我們需要使用感興趣對象的顏色值范圍,使用顏色值范圍識別和提取的圖像中目標(biāo)對象。之后,我們可以更改檢測到的對象的顏色,甚至可以直接刪除檢測到的對象。

使用 OpenCV 檢測對象顏色

在本節(jié)中,我們將使用的輸入圖像是位于網(wǎng)球場的女孩,而感興趣的對象是女孩的頭發(fā)。我們首先將 RGB 圖像轉(zhuǎn)換到 HSV 色彩空間,從而檢測黑色色值區(qū)域。

(1) 首先加載所需的庫,并讀取輸入圖像:

import cv2
import numpy as np
import matplotlib.pylab as plt
img = cv2.imread("1.png")

hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)

(2) 通過選擇黑色頭發(fā)可能擁有的 HSV 顏色范圍來為頭發(fā)創(chuàng)建掩碼,然后從輸入圖像中提取黑色頭發(fā):

mask = cv2.inRange(hsv, (0, 70, 80), (15, 255, 255))
imask = mask>0
hair = np.zeros_like(img)
hair[imask] = img[imask]

(3) 通過減少 HSV 通道值,然后將圖像轉(zhuǎn)換回 BGR 空間,將黑色頭發(fā)的顏色更改為其他顏色。

用于提取與彩色對象相對應(yīng)的像素的函數(shù)如下所示,該函數(shù)通過檢查像素值是否在下限和上限指定的值范圍內(nèi)來獲取對應(yīng)像素:

cv2.inRange(src, lowerb, upperb)

函數(shù) inRange() 檢查 src 元素是否位于 lowervupperb 構(gòu)成的區(qū)間范圍內(nèi)。

black = img.copy()
hsv[..., 0:3] = hsv[..., 0:3] / 8
black[imask] = cv2.cvtColor(hsv, cv2.COLOR_HSV2BGR)[imask]
black = np.clip(black, 0, 255)

(4) 最后,繪制輸入圖像,提取的黑色頭發(fā),修改頭發(fā)顏色并顯示帶有修改頭發(fā)顏色后的輸出圖像:

plt.figure(figsize=(20,10))
plt.subplots_adjust(0,0,1,0.9,0.01,0.075)
plt.subplot(131), plt.imshow(cv2.cvtColor(img, cv2.COLOR_BGR2RGB))
plt.axis('off')
plt.title('original', size=10)
plt.subplot(132), plt.imshow(cv2.cvtColor(hair, cv2.COLOR_BGR2RGB))
plt.axis('off')
plt.title('only hair', size=10)
plt.subplot(133), plt.imshow(cv2.cvtColor(black, cv2.COLOR_BGR2RGB))
plt.axis('off'), plt.title('hair color changed', size=10)
plt.suptitle('Detecting and changing object colors with opencv', size=15)
plt.show()

總結(jié) 

到此這篇關(guān)于Python圖像處理之使用OpenCV檢測對象顏色的文章就介紹到這了,更多相關(guān)Python OpenCV檢測對象顏色內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python numpy實(shí)現(xiàn)多次循環(huán)讀取文件 等間隔過濾數(shù)據(jù)示例

    python numpy實(shí)現(xiàn)多次循環(huán)讀取文件 等間隔過濾數(shù)據(jù)示例

    這篇文章主要介紹了python numpy實(shí)現(xiàn)多次循環(huán)讀取文件 等間隔過濾數(shù)據(jù)示例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • pytest使用@pytest.mark.parametrize()實(shí)現(xiàn)參數(shù)化的示例代碼

    pytest使用@pytest.mark.parametrize()實(shí)現(xiàn)參數(shù)化的示例代碼

    這篇文章主要介紹了pytest使用@pytest.mark.parametrize()實(shí)現(xiàn)參數(shù)化,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • python字典根據(jù)key排序的實(shí)現(xiàn)

    python字典根據(jù)key排序的實(shí)現(xiàn)

    本文主要介紹了python字典根據(jù)key排序的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-01-01
  • Python中線程threading.Thread的使用詳解

    Python中線程threading.Thread的使用詳解

    python的thread模塊是比較底層的模塊,python的threading模塊是對thread做了一些包裝的,可以更加方便的被使用。本文將為大家詳細(xì)介紹一下python中的線程threading.Thread()的使用,需要的可以參考一下
    2022-07-07
  • Python命令行參數(shù)解析模塊optparse使用實(shí)例

    Python命令行參數(shù)解析模塊optparse使用實(shí)例

    這篇文章主要介紹了Python命令行參數(shù)解析模塊optparse使用實(shí)例,本文講解了增加選項(xiàng)(add_option())、行為(action)、設(shè)置默認(rèn)值(default)、生成幫助提示(help)、設(shè)置boolean值、錯(cuò)誤處理、選項(xiàng)組(Grouping Options)等內(nèi)容,需要的朋友可以參考下
    2015-04-04
  • Python實(shí)現(xiàn)的將文件每一列寫入列表功能示例【測試可用】

    Python實(shí)現(xiàn)的將文件每一列寫入列表功能示例【測試可用】

    這篇文章主要介紹了Python實(shí)現(xiàn)的將文件每一列寫入列表功能,涉及Python文件讀取、遍歷、序列追加、賦值等相關(guān)操作技巧,需要的朋友可以參考下
    2018-03-03
  • Python內(nèi)置函數(shù)之filter map reduce介紹

    Python內(nèi)置函數(shù)之filter map reduce介紹

    Python內(nèi)置了一些非常有趣、有用的函數(shù),如:filter、map、reduce,都是對一個(gè)集合進(jìn)行處理,filter很容易理解用于過濾,map用于映射,reduce用于歸并. 是Python列表方法的三架馬車
    2014-11-11
  • Python中列表和元組的使用方法和區(qū)別詳解

    Python中列表和元組的使用方法和區(qū)別詳解

    這篇文章主要介紹了Python中列表和元組的使用方法和區(qū)別詳解的相關(guān)資料,需要的朋友可以參考下
    2016-07-07
  • Python用 KNN 進(jìn)行驗(yàn)證碼識別的實(shí)現(xiàn)方法

    Python用 KNN 進(jìn)行驗(yàn)證碼識別的實(shí)現(xiàn)方法

    這篇文章主要介紹了Python用 KNN 進(jìn)行驗(yàn)證碼識別的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2018-02-02
  • python異步爬蟲之多線程

    python異步爬蟲之多線程

    這篇文章主要介紹了python異步爬蟲之多線程,多線程可以為相關(guān)阻塞的操作單獨(dú)開啟線程或者進(jìn)程,阻塞操作可以異步執(zhí)行,但是無法無限制開啟多線程或多進(jìn)程,下面我們一起學(xué)習(xí)詳細(xì)內(nèi)容,需要的朋友可以參考一下
    2022-02-02

最新評論

瓮安县| 镇宁| 澜沧| 丰都县| 独山县| 如皋市| 云安县| 蛟河市| 花垣县| 慈利县| 山阳县| 商城县| 康定县| 博野县| 德兴市| 临颍县| 额敏县| 视频| 堆龙德庆县| 紫阳县| 沙洋县| 利津县| 巴彦淖尔市| 社旗县| 侯马市| 洛宁县| 巴林左旗| 太和县| 黔西县| 乌鲁木齐县| 维西| 上蔡县| 呈贡县| 隆安县| 常德市| 米脂县| 南投县| 宾川县| 兴仁县| 武义县| 太仓市|