Python+OpenCV圖片局部區(qū)域像素值處理改進(jìn)版詳解
上個(gè)版本的Python OpenCV圖片局部區(qū)域像素值處理,雖然實(shí)現(xiàn)了我需要的功能,但還是走了很多彎路,我意識(shí)到圖片本就是數(shù)組形式,對(duì)于8位灰度圖,通道數(shù)為1,它就是個(gè)二位數(shù)組,這樣就沒(méi)有必要再設(shè)置ROI區(qū)域,復(fù)制出來(lái)這塊區(qū)域再循環(huán)提取像素存入數(shù)組進(jìn)行處理了,可以直接將圖片存入數(shù)組,再利用numpy進(jìn)行切分相應(yīng)的數(shù)組操作就可以了,這樣一想就簡(jiǎn)單很多了,這篇我會(huì)貼出修改后的代碼,直接省去了大段的代碼啊。
ps:這次我重新裝的opencv3.2.0版本,代碼里面直接用cv2了
# 查看opencv版本,終端輸入: $ pkg-config --modversion opencv
cv_img_cv2.py
# -*- coding:utf-8 -*-
__author__ = 'lwp'
import cv2
import numpy as np
import matplotlib.pyplot as plt
path ='/media/lwp/A/111111.jpg' # 圖片路徑
lwpImg = cv2.imread(path) # 加載圖片
gray_lwpImg = cv2.cvtColor(lwpImg, cv2.COLOR_BGR2GRAY) # 轉(zhuǎn)為灰度圖
# 畫目標(biāo)區(qū)域,參數(shù)分別為圖片、左上坐標(biāo)、右下坐標(biāo)、框的顏色、框線條的粗細(xì)
lwpImg = cv2.rectangle(lwpImg, (290, 0), (310, 327), (0, 255, 0), 2)
# 顯示標(biāo)記后的圖片
cv2.imshow('local_pixel', lwpImg)
# 提取圖片像素值到矩陣
pixel_data = np.array(gray_lwpImg)
# 提取目標(biāo)區(qū)域
box_data = pixel_data[:, 290:310]
# 矩陣行求和
pixel_sum = np.sum(box_data, axis=1)
# 畫圖
x = range(576)
fig = plt.figure(figsize=(4, 2))
ax1 = fig.add_subplot(1, 1, 1)
ax1.bar(x, pixel_sum, width=1) # x為每個(gè)條形到x軸0點(diǎn)的距離,width為每個(gè)條的寬度
plt.xlabel('X')
plt.ylabel('Y')
plt.title('edge_filter')
plt.grid(True)
plt.show()
key = cv2.waitKey(0) & 0xFF
if key == ord('q'): # 按q關(guān)閉窗口
cv2.destroyAllWindows()
效果:

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
pandas初學(xué)者容易犯的六個(gè)錯(cuò)誤總結(jié)
Pandas是Python的一個(gè)數(shù)據(jù)分析包,該工具為解決數(shù)據(jù)分析任務(wù)而創(chuàng)建,Pandas納入大量庫(kù)和標(biāo)準(zhǔn)數(shù)據(jù)模型,提供高效的操作數(shù)據(jù)集所需的工具,這篇文章主要給大家介紹了總結(jié)介紹了pandas初學(xué)者容易犯的六個(gè)錯(cuò)誤,需要的朋友可以參考下2021-10-10
python使用threading.Condition交替打印兩個(gè)字符
這篇文章主要為大家詳細(xì)介紹了python使用threading.Condition交替打印兩個(gè)字符,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-05-05
Python中的descriptor描述器簡(jiǎn)明使用指南
descriptor在Python中主要被用來(lái)定義方法和屬性,使用起來(lái)相當(dāng)具有技巧性,這里我們先從基礎(chǔ)的開始,整理一份Python中的descriptor描述器簡(jiǎn)明使用指南2016-06-06
python字符串str和字節(jié)數(shù)組相互轉(zhuǎn)化方法
下面小編就為大家?guī)?lái)一篇python字符串str和字節(jié)數(shù)組相互轉(zhuǎn)化方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-03-03

