文章目錄
1.什麼opencv,它的優勢點
OpenCV是Intel®開源計算機視覺庫。它由一系列 C 函數和少量 C++ 類構成,實現了圖像處理和計算機視覺方面的很多通用算法。OpenCV 擁有包括 300 多個C函數的跨平臺的中、高層 API。它不依賴於其它的外部庫——儘管也可以使用某些外部庫。
它有以下特點:
- 開放的C/C++源碼
- 基於Intel處理器指令集開發的優化代碼
- 統一的結構和功能定義
- 強大的圖像和矩陣運算能力
- 方便靈活的用戶接口
6)同時支持MS-WINDOWS、LINUX平臺
作爲一個基本的計算機視覺、圖像處理和模式識別的開源項目,OPENCV可以直接應用於很多領域,作爲第二次開發的理想工具。
2.opencv安裝和環境配置
一般用的是python-opencv
像普通安裝python的包一樣,pip install python-opencv
3.瞭解數字圖像的基本概念:像素、彩色圖像、灰度圖像、二值圖像、圖像算數操作
像素: 數字圖像由二維的元素組成,每一個元素具有一個特定的位置(x,y)和幅值f(x,y),這些元素就稱爲像素
灰度圖像: 是一個二維灰度(或亮度)函數f(x,y)
彩色圖像: 由三個(如RGB, HSV)二維灰度(或亮度)函數f(x,y)組成。
二值圖像: 指將圖像上的每一個像素只有兩種可能的取值或灰度等級狀態,人們經常用黑白、B&W、單色圖像表示二值圖像。
圖像算數操作:
1、add—圖像矩陣相加
add(src1, src2, dst=None, mask=None, dtype=None)
2、subtract—圖像矩陣相加
subtract(src1, src2, dst=None, mask=None, dtype=None)
3、bitwise_and—圖像與運算
bitwise_and(src1, src2, dst=None, mask=None)
4、bitwise_or—圖像或運算
bitwise_and(src1, src2, dst=None, mask=None)
5、bitwise_xor—圖像異或運算
bitwise_and(src1, src2, dst=None, mask=None)
6、bitwise_not—圖像非運算
bitwise_and(src1, src2, dst=None, mask=None)
4.練習numpy中array的基本操作
就不詳細貼代碼了,我把參考鏈接放在這https://github.com/rougier/numpy-100
5.練習圖像的加載、保存、以及算術操作
例如
import cv2
img = cv2.imread(dir)
cv2.imwrite(save_dir, img)
crop = img[y1:y2, x1:x2]
參考文獻
https://blog.csdn.net/singwhatiwanna/article/details/17057925
https://blog.csdn.net/jnulzl/article/details/47129887