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

python opencv 圖像處理之圖像算數(shù)運算及修改顏色空間

 更新時間:2022年08月09日 16:59:16   作者:51CTO_姜君澤???????  
這篇文章主要介紹了python opencv 圖像處理之圖像算數(shù)運算及修改顏色空間,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的朋友可以參考一下

1.圖像加法

圖像加法有兩種方式,一種是通過 Numpy 直接對兩個圖像進行相加,另一種是通過 OpenCV 的 add() 函數(shù)進行相加。

不管使用哪種方法,相加的兩個圖像必須具有相同的深度和類型,簡單理解就是圖像的大小和類型必須一致。

1.1Numpy加法

Numpy 的運算方法是: img = img1 + img2 ,然后再對最終的運算結(jié)果取模。

  • 當(dāng)最終的像素值 <= 255 時,則運算結(jié)果直接為 img1 + img2 。
  • 當(dāng)最終的像素值 > 255 時,則運算的結(jié)果需對 255進行取模運算。

1.2OpenCV加法

OpenCV 的運算方式是直接調(diào)用 add() 函數(shù)進行的,這時的運算方式是飽和運算。

  • 當(dāng)最終的像素值 <= 255 時,則運算結(jié)果直接為 img1 + img2 。
  • 當(dāng)最終的像素值 > 255時,這時則是飽和運算,結(jié)果固定為 255 。

兩種加法方式對應(yīng)的示例如下:

import cv2 as cv
# 讀取圖像
img = cv.imread("data.jpg", cv.IMREAD_UNCHANGED)
test = img
# Numpy 加法
result1 = img + test
# OpenCV 加法
result2 = cv.add(img, test)
# 顯示圖像
cv.imshow("img", img)
cv.imshow("result1", result1)
cv.imshow("result2", result2)

# 等待顯示
cv.waitKey()
cv.destroyAllWindows()

可以看到,使用 Numpy 取模加法的圖片整體更偏藍色,而使用 OpenCV 飽和運算的加法,整體顏色更偏白色。

2.圖像融合

圖像融合其實也是一種圖像加法,但是它和圖像加法不同的是對圖像賦予不同的權(quán)重,可以使圖像具有融合或者透明的感覺。

  • 圖像加法: img = img1 + img2
  • 圖像融合: img = img1 * alpha + img2 * beta + gamma

圖像融合用到的函數(shù)為 addWeighted() 具體如下:

dst = cv.addWeighter(img1, alpha, img2, beta, gamma)
dst = img1 * alpha + img2 * beta + gamma

這里的 alpha 和 beta 都是系數(shù),而 gamma 則是一個亮度調(diào)節(jié)量,不可省略。

下面這個示例中,有一張地鐵的圖片,用這張圖片和小姐姐做一個圖像融合的案例:

img1 = cv.imread(file, cv.IMREAD_UNCHANGED)
img1=cv.resize(img1,(1000,1000))
img2 = cv.imread(file1, cv.IMREAD_UNCHANGED)
img2=cv.resize(img2,(1000,1000))
# 圖像融合
img = cv.addWeighted(img1, 0.4, img2, 0.6, 10)
# 顯示圖像
cv.imshow("img1", img1)
cv.imshow("img2", img2)
cv.imshow("img", img)

# 等待顯示
cv.waitKey()
cv.destroyAllWindows()

注意:這里如果二個圖像像素不同要更改為同一像素下cv.resize(img,(width,hegiht))

3.改變顏色空間

OpenCV 中有超過150種顏色空間轉(zhuǎn)換方法。我們先介紹兩種最常用的: BGR <-> 灰度 和 BGR <-> HSV 。

對于改變顏色空間,我們使用 cvtColor(input_image, flag) 函數(shù),其中的 flag 為轉(zhuǎn)換的類型。

一些常見的 flag 值:

# BGR 轉(zhuǎn) 灰度
cv.COLOR_BGR2GRAY
# BGR 轉(zhuǎn) HSV
cv.COLOR_BGR2HSV
# BGR 轉(zhuǎn) RGB
cv.COLOR_BGR2RGB
# 灰度 轉(zhuǎn) BGR
cv.COLOR_GRAY2BGR

我們使用 cvtColor() 這個函數(shù)將小姐姐轉(zhuǎn)化成灰度圖像,示例如下:

import cv2 as cv
# 讀取圖像
img = cv.imread("data.jpg", cv.IMREAD_UNCHANGED)
# 圖像類型轉(zhuǎn)換
result = cv.cvtColor(img, cv.COLOR_RGB2GRAY)

# 圖像展示
cv.imshow("img", img)
cv.imshow("result", result)

# 等待顯示
cv.waitKey()
cv.destroyAllWindows()

到此這篇關(guān)于python opencv 圖像處理之圖像算數(shù)運算及修改顏色空間的文章就介紹到這了,更多相關(guān)python opencv 圖像處理內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python實現(xiàn)Web應(yīng)用國際化i18n的示例詳解

    Python實現(xiàn)Web應(yīng)用國際化i18n的示例詳解

    這篇文章主要為大家詳細介紹了如何基于Python的gettext模塊,實現(xiàn)一個靈活、可擴展的多語言支持系統(tǒng),文中的示例代碼講解詳細,有需要的可以參考下
    2025-02-02
  • 分享5個python提速技巧,速度瞬間提上來了

    分享5個python提速技巧,速度瞬間提上來了

    這篇文章主要給大家分享的是5個python提速技巧,工作或者學(xué)習(xí)的過程中難免會遇到卡頓問題,下面的提速技巧具有一定的參考價值,需要的小伙伴可以參考一下
    2022-01-01
  • Python之lambda匿名函數(shù)及map和filter的用法

    Python之lambda匿名函數(shù)及map和filter的用法

    今天小編就為大家分享一篇關(guān)于Python之lambda匿名函數(shù)及map和filter的用法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • Python寫UI自動化之playwright(點擊操作)詳解

    Python寫UI自動化之playwright(點擊操作)詳解

    這篇文章主要介紹了Playwright庫中click()方法的參數(shù)及其使用場景,包括選擇器、修飾鍵、點擊位置、鼠標(biāo)按鈕、點擊次數(shù)、延遲、超時、強制點擊、試點擊和不等待導(dǎo)航等選項,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-02-02
  • YOLOv5小目標(biāo)切圖檢測的思路與方法

    YOLOv5小目標(biāo)切圖檢測的思路與方法

    目標(biāo)檢測Yolo算法是非常經(jīng)典且應(yīng)用廣泛的算法,下面這篇文章主要給大家介紹了關(guān)于YOLOv5小目標(biāo)切圖檢測的思路與方法,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-12-12
  • Python?的counter()函數(shù)解析與示例詳解

    Python?的counter()函數(shù)解析與示例詳解

    在?Python?中,?collections?模塊提供了?Counter?類,用于計算可迭代對象中元素的數(shù)量,?Counter?是一個字典的子類,它以元素作為鍵,以元素出現(xiàn)的次數(shù)作為值進行計數(shù),本文給大家介紹Python?的counter()函數(shù),感興趣的朋友一起看看吧
    2023-08-08
  • python numpy生成等差數(shù)列、等比數(shù)列的實例

    python numpy生成等差數(shù)列、等比數(shù)列的實例

    今天小編就為大家分享一篇python numpy生成等差數(shù)列、等比數(shù)列的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • Python中 Global和Nonlocal的用法詳解

    Python中 Global和Nonlocal的用法詳解

    global關(guān)鍵字用來在函數(shù)或其他局部作用域中使用全局變量, nonlocal聲明的變量不是局部變量,也不是全局變量,而是外部嵌套函數(shù)內(nèi)的變量。這篇文章主要介紹了Python中 Global和Nonlocal的用法,需要的朋友可以參考下
    2020-01-01
  • Python?PaddleNLP開源實現(xiàn)快遞單信息抽取

    Python?PaddleNLP開源實現(xiàn)快遞單信息抽取

    這篇文章主要為大家介紹了Python?PaddleNLP開源項目實現(xiàn)對快遞單信息抽取,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-06-06
  • Python實現(xiàn)的HTTP并發(fā)測試完整示例

    Python實現(xiàn)的HTTP并發(fā)測試完整示例

    這篇文章主要介紹了Python實現(xiàn)的HTTP并發(fā)測試,涉及Python多線程并發(fā)操作相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2015-05-05

最新評論

曲靖市| 多伦县| 体育| 郴州市| 桐城市| 灵石县| 合水县| 泰州市| 隆化县| 东港市| 徐闻县| 潜山县| 怀来县| 同德县| 三台县| 岑巩县| 略阳县| 茶陵县| 黑水县| 文成县| 苏尼特右旗| 大厂| 嘉荫县| 花莲县| 武平县| 太和县| 布尔津县| 方正县| 镇原县| 永和县| 西安市| 望城县| 新兴县| 顺平县| 大石桥市| 原阳县| 府谷县| 勐海县| 米林县| 阿巴嘎旗| 海城市|