Python OpenCV對圖像像素進行操作
遍歷并修改圖像像素值
在使用opencv處理圖像時,有時需要對圖像的每個像素點進行處理,比如取反、修改值等操作,就需要通過h和w遍歷像素。
依然以下圖為例:
具體代碼:
import cv2 as cv import numpy as np def image_pixel(image_path: str): img = cv.imread(image_path, cv.IMREAD_COLOR) cv.imshow('input', img) h, w, c = img.shape # 遍歷像素點,修改圖像b,g,r值 for row in range(h): for col in range(w): b, g, r = img[row, col] # img[row, col] = (255 - b, 255 - g, 255 - r) # img[row, col] = (255 - b, g, r) # img[row, col] = (255 - b, g, 255 - r) img[row, col] = (0, g, r) cv.imshow('result', img) cv.imwrite('images/result.jpg', img) cv.waitKey(0) cv.destroyAllWindows()
結(jié)果展示:
圖像的加減乘除運算
圖像的加減運算可以調(diào)整圖片的亮度和對比度。圖像的加減運算可以調(diào)整圖像的亮度;圖像的乘除運算可以調(diào)整圖像的對比度。
具體代碼:
# -*-coding:utf-8-*- """ File Name: image_pixel_operation.py Program IDE: PyCharm Create File By Author: Hong """ import cv2 as cv import numpy as np def math_pixel(image_path: str): img = cv.imread(image_path, cv.IMREAD_COLOR) cv.imshow('input', img) h, w, c = img.shape blank = np.zeros_like(img) blank[:, :] = (2, 2, 2) # 所有像素值設為50 # 改變圖像亮度 mask = cv.add(img, blank) # 圖像加操作。圖像形狀一樣就可以相加,像素值類型不一樣不影響, 人為的增加了亮度 mask = cv.subtract(img, blank) # 圖像減操作。人為的降低了亮度 # 改變圖像對比度 # result = cv.divide(img, blank) # 圖像除操作 result = cv.multiply(img, blank) # 圖像乘操作 cv.imshow('blank', blank) cv.imshow('mask', mask) cv.imshow('contrast', result) cv.waitKey(0) cv.destroyAllWindows()
效果展示:
到此這篇關于Python OpenCV對圖像像素進行操作的文章就介紹到這了,更多相關Python OpenCV圖像像素操作內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
python中計算一個列表中連續(xù)相同的元素個數(shù)方法
今天小編就為大家分享一篇python中計算一個列表中連續(xù)相同的元素個數(shù)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-06-06Python實現(xiàn)的生產(chǎn)者、消費者問題完整實例
這篇文章主要介紹了Python實現(xiàn)的生產(chǎn)者、消費者問題,簡單描述了生產(chǎn)者、消費者問題的概念、原理,并結(jié)合完整實例形式分析了Python實現(xiàn)生產(chǎn)者、消費者問題的相關操作技巧,需要的朋友可以參考下2018-05-05python生成tensorflow輸入輸出的圖像格式的方法
本篇文章主要介紹了python生成tensorflow輸入輸出的圖像格式的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-02-02python 采用paramiko 遠程執(zhí)行命令及報錯解決
這篇文章主要介紹了python 采用paramiko 遠程執(zhí)行命令及報錯解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-10-10Python數(shù)據(jù)分析中Groupby用法之通過字典或Series進行分組的實例
下面小編就為大家分享一篇Python數(shù)據(jù)分析中Groupby用法之通過字典或Series進行分組的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2017-12-12