python如何分析灰度
影像型別:通常我們的數字影像是彩色的3通道RGB影像,R代表紅色,G代表綠色,B代表藍色。
儲存方式:通常是uint8 無符號整數,0~255,當然也有24bits 可以表示更多的顏色,雖然這樣做可以提高影像對於現實世界的一個還原度,但是會增加更多的開銷,因此我們通常還是用8bits
灰度影像:灰度影像在影像處理種有著非常重要的地位,一些常用的操作都會涉及到灰度影像的轉換,邊緣檢測、二值化等這些操作之前通常都是RGB to Gray。
直接給出公式:Gray = 0.2989*R+0.5870*G+0.1140*B
#Python Opencv #匯入標頭檔案 %matplotlib inline import matplotlib.pyplot as plt import cv2 import numpy as np #讀取影像,opencv讀取影像通道順序為BGR img=cv2.imread('img.path.jpg') #顯示影像,其中.astype(np.uint8)為了確保資料格式以免無法顯示,plt顯示影像需要為RGB順序 plt.figure(figsize=(15,10)) plt.imshow(cv2.cvtColor(img.astype(np.uint8), cv2.COLOR_BGR2RGB)) plt.show()
img=0.2989*img[:,:,2]+0.5870*img[:,:,1]+0.1140*img[:,:,0] ###### plt.figure(figsize=(15,10)) plt.imshow(img, cmap ='gray') plt.show()
#opencv 自帶函式進行轉化 plt.figure(figsize=(15,10)) plt.imshow(cv2.cvtColor(img.astype(np.uint8), cv2.COLOR_BGR2GRAY),cmap='gray') plt.show()
img3=0.2989*img[:,:,2]+0.5870*img[:,:,1]+0.1140*img[:,:,0] img2=cv2.cvtColor(img.astype(np.uint8), cv2.COLOR_BGR2GRAY) print((img3-img2).sum()/(img.shape[0]*img.shape[1])) ###結果=-0.0072855376781315
對比下,自己用公式得到的灰度圖和opencv自己函式的灰度圖,其實還是不一樣的,應該是計算精度上的差距
更多Python知識,請關注:!!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/1916/viewspace-2833119/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- python - 圖片灰度化、二值化Python
- 如何實現灰度釋出輕量化?
- 全鏈路灰度之 RocketMQ 灰度MQ
- python將矩陣轉化為灰度圖Python矩陣
- 如何用Python做情感分析?Python
- 如何用istio實現應用的灰度釋出
- 如何用python做資料分析Python
- Python VS Java如何選擇?Python學習分析!PythonJava
- Python-OpenCV 處理影象(七):影象灰度化處理PythonOpenCV
- 如何用Python進行資料分析?Python
- Python如何生成詞雲(詳細分析)Python
- 如何將真彩色圖轉換為各種灰度圖
- 如何輕鬆學習Python資料分析?Python
- 如何用python分析xml獲取資料?PythonXML
- 如何用一個外掛解決 Serverless 灰度釋出難題?Server
- Android影像灰度化、線性灰度變化、二值化處理方法Android
- CSS圖片濾鏡灰度CSS
- 雲原生灰度更新實踐
- Vue + Webpack 灰度釋出控制VueWeb
- 如何用Python做AQI分析並視覺化?Python視覺化
- Ruby 和 Python 分析器是如何工作的?Python
- 數字影像處理(一)之灰度轉換和卷積python實現卷積Python
- matlab練習程式(灰度拉伸)Matlab
- 分散式中灰度方案實踐分散式
- Java將彩色PDF轉為灰度Java
- 資料分析師之如何學好Python(四)Python
- [Python影象處理] 十一.灰度直方圖概念及OpenCV繪製直方圖Python直方圖OpenCV
- 如何基於 Nacos 和 Sentinel ,實現灰度路由和流量防護一體化路由
- Python培訓分享:如何做資料分析,資料分析流程是什麼?Python
- 如何用 Python 和 API 收集與分析網路資料?PythonAPI
- 如何進行 Python效能分析,你才能如魚得水?Python
- 灰度部署、滾動部署與藍綠部署
- Metal入門教程(四)灰度計算
- 微服務全鏈路灰度新能力微服務
- python效能分析Python
- 如何用python爬蟲分析動態網頁的商品資訊?Python爬蟲網頁
- 如何去使用Python分析股票資料?學到就是賺到Python
- 如何用Python和R對故事情節做情緒分析?Python