<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          基于OpenCV的圖像強(qiáng)度操作

          共 7035字,需瀏覽 15分鐘

           ·

          2020-12-23 16:41

          點(diǎn)擊上方小白學(xué)視覺(jué)”,選擇加"星標(biāo)"或“置頂

          重磅干貨,第一時(shí)間送達(dá)

          01. 什么是圖像強(qiáng)度操作


          • 更改任何通道中的像素值

          • 對(duì)圖像的數(shù)學(xué)運(yùn)算

          • 亮度變化

          • 對(duì)比度變化

          • 伽瑪操縱

          • 直方圖均衡

          • 圖像預(yù)處理中的濾波等增強(qiáng)

          使用OpenCV加載圖像

          import numpy as npimport cv2from matplotlib import pyplot as pltimg = cv2.imread(folder_path + "imgs/chapter3/man.jpg", 0);plt.imshow(img, cmap = "gray");plt.show()

          使用Opencv向輸入圖像添加常數(shù)

          img = cv2.imread(folder_path + "imgs/chapter3/man.jpg", 0);##########################FOCUS############################img = cv2.add(img, 120);###########################################################plt.imshow(img, cmap = "gray");plt.show()

          使用Opencv減去常數(shù)以輸入圖像

          img = cv2.imread(folder_path + "imgs/chapter3/man.jpg", 0);##########################FOCUS############################img = cv2.subtract(img, 120);####################################################################plt.imshow(img, cmap = "gray");plt.show()

          02. 圖像去均值化

          方法1

          • 將圖像拆分為其通道。

          • 對(duì)于每個(gè)通道,計(jì)算其平均值。

          • 從該通道中的每個(gè)像素中減去均值

          方法2(用于深度學(xué)習(xí))

          將所有圖像分割成各自的通道,對(duì)于所有圖像的每個(gè)通道:

          • 為每個(gè)圖像找到該通道的均值。

          • 查找所有計(jì)算出的均值的均值。

          應(yīng)用領(lǐng)域1:批標(biāo)準(zhǔn)化的一部分

          # Grayscale imageimport numpy as npimport cv2from matplotlib import pyplot as pltimg = cv2.imread(folder_path + "imgs/chapter3/man.jpg", 0); # read the image as grayscale
          # cv2.subtractmean = np.mean(img);img_out = cv2.subtract(img, mean);
          f = plt.figure(figsize=(15,15))f.add_subplot(1, 2, 1).set_title('Original Image');plt.imshow(img, cmap = "gray");f.add_subplot(1, 2, 2).set_title('Mean subtracted image');plt.imshow(img_out, cmap = "gray");plt.show()

          應(yīng)用領(lǐng)域1:負(fù)片

          灰度負(fù)片

          # negative of grayscaleimport numpy as npimport cv2from matplotlib import pyplot as pltimg = cv2.imread(folder_path + "imgs/chapter3/man.jpg", 0); # read the image as grayscale
          #cv2.subtractimg_out = cv2.subtract(255, img);
          f = plt.figure(figsize=(15,15))f.add_subplot(1, 2, 1).set_title('Original Image');plt.imshow(img, cmap = "gray");f.add_subplot(1, 2, 2).set_title('Negative image');plt.imshow(img_out, cmap = "gray");plt.show()

          RGB圖像負(fù)片

          # negative of rgb imagesimport numpy as npimport cv2from matplotlib import pyplot as pltimg = cv2.imread(folder_path + "imgs/chapter3/castle.png", -1); img_out = 255 - img;
          f = plt.figure(figsize=(15,15))f.add_subplot(1, 2, 1).set_title('Original Image');plt.imshow(img[:,:,::-1]);f.add_subplot(1, 2, 2).set_title('Negative image');plt.imshow(img_out[:,:,::-1]);plt.show()


          03. 兩幅圖像的融合

          直接融合

          # Direct addingimport numpy as npimport cv2from matplotlib import pyplot as plt
          img1 = cv2.imread(folder_path + "imgs/chapter3/castle.png", -1); img1 = cv2.resize(img1, (256, 256));img2 = cv2.imread(folder_path + "imgs/chapter3/tessellate.jpg", -1);img2 = cv2.resize(img2, (256, 256));
          img_out = cv2.add(img1, img2);
          f = plt.figure(figsize=(8,8))plt.imshow(img_out[:,:,::-1]);plt.show()

          加權(quán)融合

          # cv2.addWeighted
          import numpy as npimport cv2from matplotlib import pyplot as pltimg1 = cv2.imread(folder_path + "imgs/chapter3/castle.png", -1); img1 = cv2.resize(img1, (256, 256));img2 = cv2.imread(folder_path + "imgs/chapter3/tessellate.jpg", -1);img2 = cv2.resize(img2, (256, 256));
          # Like a faint watermarkimg_out = cv2.addWeighted(img1,0.7,img2,0.3,0);
          f = plt.figure(figsize=(8,8))plt.imshow(img_out[:,:,::-1]);plt.show()


          04. 圖像求差
          import numpy as npimport cv2from matplotlib import pyplot as pltimg1 = cv2.imread(folder_path + "imgs/chapter3/background.png", -1); img2 = cv2.imread(folder_path + "imgs/chapter3/foreground.png", -1);
          img_out = cv2.subtract(img2, img1);
          f = plt.figure(figsize=(15,10))f.add_subplot(2, 2, 1).set_title('Background Image');plt.imshow(img1[:, :, ::-1])f.add_subplot(2, 2, 2).set_title('Background image with some object');plt.imshow(img2[:, :, ::-1])f.add_subplot(2, 2, 3).set_title('Subtracted image');plt.imshow(img_out[:, :, ::-1])plt.show()




          05. 亮度變化
          • 發(fā)光或反射光的質(zhì)量或狀態(tài)

          • 亮度是一個(gè)相對(duì)術(shù)語(yǔ)。這取決于您的視覺(jué)感知。

          • 亮度可以定義為光源相對(duì)于我們所比較的光源輸出的能量。

          import numpy as npimport cv2from matplotlib import pyplot as pltimg = cv2.imread(folder_path + 'imgs/chapter3/outdoor.jpg')
          value = 100 #Increase or decrease brightness by this value
          hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)hsv[:,:,2] = cv2.add(hsv[:,:,2], value)
          img_out = cv2.cvtColor(hsv, cv2.COLOR_HSV2BGR)
          f = plt.figure(figsize=(15,15))f.add_subplot(1, 2, 1).set_title('Original Image');plt.imshow(img[:, :, ::-1])f.add_subplot(1, 2, 2).set_title('Brightness manipulated image');plt.imshow(img_out[:, :, ::-1])plt.show()



          06. 對(duì)比度
          • 對(duì)比度是使對(duì)象(或其在圖像或顯示器中的表示形式)與眾不同的亮度或顏色差異。

          • 可視化為圖像中最大和最小像素強(qiáng)度之間的差異。

          • 對(duì)比度由同一視野內(nèi)物體的顏色和亮度差異決定。

          from PIL import Image, ImageEnhancefrom matplotlib import pyplot as plt
          img = Image.open(folder_path + "imgs/chapter3/outdoor.jpg");enhancer = ImageEnhance.Contrast(img)out = enhancer.enhance(factor=1.25)
          f = plt.figure(figsize=(15,15))f.add_subplot(2, 1, 1).set_title('Original Image');plt.imshow(img)f.add_subplot(2, 1, 2).set_title('Contrast manipulated image');plt.imshow(out)plt.show()

          07. 伽瑪矯正
          • 伽瑪校正是一種用于對(duì)亮度進(jìn)行編碼和解碼的非線(xiàn)性操作。

          • 所有彩色和灰度數(shù)字圖像文件都包含伽瑪數(shù)據(jù)。

          • Gamma涉及在數(shù)字靈敏度和人眼靈敏度之間進(jìn)行轉(zhuǎn)換,一方面提供了許多優(yōu)勢(shì),另一方面卻增加了復(fù)雜性。

          • 伽瑪可優(yōu)化中間調(diào)的對(duì)比度和亮度。

          import numpy as npimport cv2from matplotlib import pyplot as pltimg = cv2.imread(folder_path + 'imgs/chapter3/indoor.jpg')
          # Apply Gamma=2.2 on the normalised image and then multiply by scaling constant (For 8 bit, c=255)
          # Normalize image, pixels to 0-1# Multiple by gamma# Re-factor the image pixels to have value from 0-255
          img_out = np.array(255*(img/255)**2.2,dtype='uint8')
          f = plt.figure(figsize=(15,15))f.add_subplot(2, 1, 1).set_title('Original Image');plt.imshow(img[:, :, ::-1])f.add_subplot(2, 1, 2).set_title('Gamma manipulated image');plt.imshow(img_out[:, :, ::-1])plt.show()


          08. 直方圖均衡

          直方圖

          • 直方圖顯示事物發(fā)生頻率的圖表。

          • 圖像像素直方圖表示具有特定強(qiáng)度值的像素的頻率。

          直方圖均衡

          • 直方圖均衡用于增強(qiáng)對(duì)比度。

          • 此方法增加了圖像的整體對(duì)比度。

          import numpy as npimport cv2from matplotlib import pyplot as pltimg = cv2.imread(folder_path + "imgs/chapter3/outdoor.jpg", 0)
          # Ravel falttens the 2d array to 1d array# 256 - total number of binsplt.hist(img.ravel(),256,[0,256])
          plt.title("Histogram for original image")plt.show()


          import numpy as npimport cv2from matplotlib import pyplot as pltimg = cv2.imread(folder_path + "imgs/chapter3/outdoor.jpg", 0)
          # cv2.equalizeHistimg_out = cv2.equalizeHist(img)
          f = plt.figure(figsize=(15,15))f.add_subplot(2, 1, 1).set_title('Original Image');plt.imshow(img, cmap="gray")f.add_subplot(2, 1, 2).set_title('Histogram equalized image');plt.imshow(img_out, cmap="gray")plt.show()


          代碼鏈接:https://github.com/Tessellate-Imaging/monk_v1/blob/master/study_roadmaps/3_image_processing_deep_learning_roadmap/1_image_processing_basics/3) Image Intensity manipulation.ipynb


          下載1:OpenCV-Contrib擴(kuò)展模塊中文版教程
          在「小白學(xué)視覺(jué)」公眾號(hào)后臺(tái)回復(fù):擴(kuò)展模塊中文教程即可下載全網(wǎng)第一份OpenCV擴(kuò)展模塊教程中文版,涵蓋擴(kuò)展模塊安裝、SFM算法、立體視覺(jué)、目標(biāo)跟蹤、生物視覺(jué)、超分辨率處理等二十多章內(nèi)容。

          下載2:Python視覺(jué)實(shí)戰(zhàn)項(xiàng)目31講
          小白學(xué)視覺(jué)公眾號(hào)后臺(tái)回復(fù):Python視覺(jué)實(shí)戰(zhàn)項(xiàng)目31講即可下載包括圖像分割、口罩檢測(cè)、車(chē)道線(xiàn)檢測(cè)、車(chē)輛計(jì)數(shù)、添加眼線(xiàn)、車(chē)牌識(shí)別、字符識(shí)別、情緒檢測(cè)、文本內(nèi)容提取、面部識(shí)別等31個(gè)視覺(jué)實(shí)戰(zhàn)項(xiàng)目,助力快速學(xué)校計(jì)算機(jī)視覺(jué)。

          下載3:OpenCV實(shí)戰(zhàn)項(xiàng)目20講
          小白學(xué)視覺(jué)公眾號(hào)后臺(tái)回復(fù):OpenCV實(shí)戰(zhàn)項(xiàng)目20講即可下載含有20個(gè)基于OpenCV實(shí)現(xiàn)20個(gè)實(shí)戰(zhàn)項(xiàng)目,實(shí)現(xiàn)OpenCV學(xué)習(xí)進(jìn)階。

          下載4:leetcode算法開(kāi)源書(shū)
          小白學(xué)視覺(jué)公眾號(hào)后臺(tái)回復(fù):leetcode即可下載。每題都 runtime beats 100% 的開(kāi)源好書(shū),你值得擁有!




          交流群


          歡迎加入公眾號(hào)讀者群一起和同行交流,目前有SLAM、三維視覺(jué)、傳感器自動(dòng)駕駛、計(jì)算攝影、檢測(cè)、分割、識(shí)別、醫(yī)學(xué)影像、GAN算法競(jìng)賽等微信群(以后會(huì)逐漸細(xì)分),請(qǐng)掃描下面微信號(hào)加群,備注:”昵稱(chēng)+學(xué)校/公司+研究方向“,例如:”張三?+?上海交大?+?視覺(jué)SLAM“。請(qǐng)按照格式備注,否則不予通過(guò)。添加成功后會(huì)根據(jù)研究方向邀請(qǐng)進(jìn)入相關(guān)微信群。請(qǐng)勿在群內(nèi)發(fā)送廣告,否則會(huì)請(qǐng)出群,謝謝理解~


          瀏覽 46
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  亚洲精品字幕久久久久 | 五月天婷婷六月丁香91 | 性爱视频黄色在线观看 | 伊人永久在线 | 蜜桃视频|