發(fā)布時間:2024-08-18 15:51:17 瀏覽量:241次
大部分的cv應(yīng)用都需要處理圖像輸入和輸出。比如,一個互動式cv應(yīng)用可能通過攝像頭作為輸入源,并在窗口中顯示輸出。除了攝像頭輸入外,還可能涉及到圖像文件、視頻文件和原始字節(jié)的讀取。舉例來說,網(wǎng)絡(luò)傳輸中的原始字節(jié)可能是應(yīng)用中圖形處理算法生成的。
不管是什么格式,每個像素都有一個值,但表示像素的方法各不相同。例如,可以通過使用二維NumPy數(shù)組簡單地創(chuàng)建一個黑色的正方形圖像:
OpenCV的imread函數(shù)支持各種靜態(tài)圖像文件格式。
#### 顯示不同flags讀取結(jié)果def cv2flags(filename): flags = [0, 1, 2, 3, 4] for flag in flags: m = cv2.imread(filename, flags=flag) cv2.namedWindow(f"flags={flag}", 0) cv2.imshow(f"flags={flag}", m) cv2.waitKey(0)filename = "./src/imgs/1.jpg"cv2flags(filename)
flags:圖像的通道和色彩信息(默認值為1),即彩色圖片。8位深度圖片存儲像素點的取值范圍為0~255,1通道為灰度圖,3通道為彩色圖。
基本上,一個字節(jié)可以表示0到255的整數(shù)。對于實時圖像應(yīng)用來說,一個像素通常由每個通道的一個字節(jié)表示。
一個OpenCV圖像是array類型的二維或三維數(shù)組。8位的灰度圖像是一個含有字節(jié)值的二維數(shù)組。因此,我們可以通過坐標位置訪問像素,比如修改橫向600-800、縱向100-200為藍色(BGR=(255,0,0)):
掌握了這些基礎(chǔ)知識,我們就可以輕松讀取圖片或網(wǎng)絡(luò)圖片,方法十分簡單:
### 核心點:獲取圖像字節(jié)數(shù)據(jù)def show_url_image(url_path): resp = request.urlopen(url_path) image = np.asarray(bytearray(resp.read()), dtype="uint8") ### 字節(jié)流數(shù)組 img = cv2.imdecode(image, 1) cv2.namedWindow("show_url_image", 0) cv2.imshow("show_url_image", img) cv2.waitKey(0)
視頻讀取:
OpenCV提供了VideoCapture類和Video Writer類來支持各種視頻文件格式。在到達視頻文件末尾之前,VideoCapture類通過read()函數(shù)獲取新的幀,每幀是基于BGR格式的圖像。
#### 視頻讀取def show_video(video_path): cap = cv2.VideoCapture(video_path) while (cap.isOpened()): ret, frame = cap.read() if ret == True: frame1 = process(frame, opt=0) ###增加視頻處理功能 met = np.hstack((frame, frame1)) cv2.namedWindow("show_video", 0) cv2.imshow("show_video", met) if cv2.waitKey(1) & 0xFF == ord('q'): break else: break
waitKey()的參數(shù)為等待鍵盤觸發(fā)的時間,單位為毫秒,其返回值是1(表示沒有鍵被按下)或ASCII碼,如27表示按下Esc鍵。另外,Python提供了一個標準函數(shù)ord(),該函數(shù)可以將字符轉(zhuǎn)換為ASCII碼。例如,輸入ord('a)會返回97。
以上就是圖片、視頻讀寫的基本方法,是不是非常簡單呢?
備注:免費獲取源碼,請評論區(qū)回復(fù)源碼。
熱門資訊
想將照片變成漫畫效果?這篇文章分享了4個方法,包括Photoshop、聰明靈犀、VanceAI Toongineer、醒圖,簡單操作就能實現(xiàn),快來嘗試一下吧!
2. 華為手機神奇“AI修圖”功能,一鍵消除衣服!原圖變身大V領(lǐng)深V!
最近華為手機Pura70推出的“AI修圖”功能引發(fā)熱議,通過簡單操作可以讓照片中的人物換裝。想了解更多這款神奇功能的使用方法嗎?點擊查看!
近年來,人工智能逐漸走入公眾視野,其中的AI圖像生成技術(shù)尤為引人注目。只需在特定軟件中輸入關(guān)鍵詞描述語以及上傳參考圖就能智能高效生成符合要求的...
4. AI視頻制作神器Viggle:讓靜態(tài)人物動起來,創(chuàng)意無限!
Viggle AI是一款免費制作視頻的AI工具,能讓靜態(tài)人物圖片動起來,快來了解Viggle AI的功能和優(yōu)勢吧!
5. Logo Diffusion——基于sd繪畫模型的AI LOGO 生成器
這下LOGO設(shè)計徹底不用求人了。接下來詳細演示一遍操作流程首先進入Logo D... 想學(xué)習(xí)更多AI技能,比如說關(guān)于怎么樣利用AI來提高生產(chǎn)效率、還能做什么AI...
6. 零基礎(chǔ)10分鐘生成漫畫,教大家如何用AI生成自己的漫畫
接下來,我將親自引導(dǎo)你,使用AI工具,創(chuàng)作一本既有趣又能帶來盈利的漫畫。我們將一起探索如何利用這個工具,發(fā)揮你的創(chuàng)意,制作出令人驚嘆的漫畫作品。讓...
7. AI顯卡繪畫排行榜:4090無懸念,最具性價比出人意料
在AI繪圖領(lǐng)域,Stable Diffusion的顯卡繪圖性能備受關(guān)注。本文整理了Stable Diffusion顯卡的硬件要求和性能表現(xiàn),以及2023年3月顯卡AI繪圖效率排行榜和性價比排行榜。歡迎查看最新的AI顯卡算力排行榜。
8. 趕緊收藏好!這4個完全免費的AI視頻制作網(wǎng)站和工具
以下是一些免費的AI視頻制作網(wǎng)站或工具,幫助您制作各種類型的視頻。 1. Lumen5:Lumen5是一個基于AI的視頻制作工具,可將文本轉(zhuǎn)換為視頻。 用戶可以使...
就能快速生成一幅極具藝術(shù)效果的作品,讓現(xiàn)實中不懂繪畫的人也能參與其中創(chuàng)作!真的超贊噠~趣趣分享幾款超厲害的AI繪畫軟件,提供詳細操作!有需要的快來...
10. 10個建筑AI工具,從設(shè)計到施工全覆蓋!肯定有你從來沒聽過的
講述了建筑業(yè)比較著名的AI公司小庫科技做出的探索,在這兒就不多說了。今天,我們試著在規(guī)劃設(shè)計、建筑方案設(shè)計、住宅設(shè)計、管道設(shè)計、出渲染圖、3D掃...
最新文章
同學(xué)您好!