色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

OpenCV的基本操作

深度學習自然語言處理 ? 來源:深度學習自然語言處理 ? 作者:云時之間 ? 2020-11-02 15:04 ? 次閱讀

今天這一篇文章主要記錄一下OpenCV中一些基本的操作,包括讀取圖片,視頻以及反轉圖像的幾種操作:

一:圖片的載入

圖片載入很常用,很實用。。。

二:讀取視頻

讀取視頻分為從攝像頭中讀入和從硬盤中讀入,如果是攝像頭就在videocapture函數中填寫數值,0是默認的第一個攝像頭,1.是第二個,以此類推,如果沒有外置攝像頭,就直接“”填寫路徑就行。

三:打印圖片的類型

圖片的信息主要包括圖片的類型,圖片的尺寸,圖片的長寬高以及通道數,如果是彩色圖片通道數就是3,如果是黑白的圖片通道數為1。

我這里定義了一個函數來輸出圖片的信息:

這里可以看到:

圖片的大小是589*646的彩色3通道圖片,編碼方式是uint8.

四:圖像的對比度轉換

我們知道圖像的像素數是從0-255,如果實現圖像的反轉只需要遍歷每個像素然后每個像素減去255即可,這里用一個笨方法實現以下:

得出的結果是這樣:

似乎轉換了以后的圖片還挺好看的。

當然,這樣的方法太過于復雜,并且執行時間,效率都很低:

用時長達4555毫秒。。。

這時候我們使用OpenCV自帶的bitwise_not函數:

因為底層是使用的C++語言進行封裝,所以執行快得多,來對比下:

同樣的一張圖只需要17ms,舒服多了。

五:時間消耗的計算

上圖中的測試時間的計算用到了兩個函數:

GetTickcount函數:它返回從操作系統啟動到當前所經歷的計時周期數

GetTickFrequency函數:返回每秒的計時周期數

使用的方法:

t1 = cv.getTickCount()

#你需要的測試的函數或代碼

t2 = cv.getTickCount()

time = (t2-t1)/cv.getTickFrequency()
print("time:%s ms"%(time*1000))

最后,附上完整代碼,方便大家復現,下一篇文章就要開始學習圖像色彩空間的轉換,還需努力。如果有任何問題歡迎在底下評論,我們一起交流,一起加油!

import cv2 as cvimport numpy as np def access_pixel(image):#屬性的讀取 print(image.shape) height = image.shape[0] width = image.shape[1] channels = image.shape[2] print("width: %s, height: %s, channels: %s"%(width,height,channels)) #遍歷每一個像素點,太慢了,更新 for row in range(height): for col in range(width): for c in range(channels): pv = image[row,col,c] image[row,col,c] = 255-pv cv.imshow("numpy_test",image) def inverse(img): dis = cv.bitwise_not(img) cv.imshow("inverse",dis) def create_image(): ''' img = np.zeros([400,400,4],np.uint8) img[ :, :,0] = np.ones([400,400])*255 #對通道進行賦值,0是藍通道,1是綠通道,2是紅色通道,多通道 cv.imshow("new_image",img) ''' #初始化灰度圖像 img2 = np.zeros([400,400,1],np.uint8) img2[:,:,0] = np.ones([400,400])*127 #img2 = img2*127 cv.imshow("new_image_2",img2) #維度變換 m1 = np.ones([3,3],np.uint8) m1.fill(12222.388) print(m1) m2 = m1.reshape([1,9]) print(m2) print("---------HELLO-----PYTHON--------------------")src = cv.imread("D:/1.png")cv.namedWindow("input image",cv.WINDOW_AUTOSIZE)cv.imshow("input image",src)t1 = cv.getTickCount()#access_pixel(src)#create_image()inverse(src)t2 = cv.getTickCount()#測試時間消耗time = (t2-t1)/cv.getTickFrequency()print("time:%s ms"%(time*1000))cv.waitKey(0)cv.destroyAllWindows()

責任編輯:xj

原文標題:【CV學習筆記】OpenCV基本操作

文章出處:【微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • CV
    CV
    +關注

    關注

    0

    文章

    53

    瀏覽量

    16879
  • 代碼
    +關注

    關注

    30

    文章

    4803

    瀏覽量

    68775
  • OpenCV
    +關注

    關注

    31

    文章

    635

    瀏覽量

    41405

原文標題:【CV學習筆記】OpenCV基本操作

文章出處:【微信號:zenRRan,微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    【AI實戰項目】基于OpenCV的“顏色識別項目”完整操作過程

    OpenCV是一個廣受歡迎且極為流行的計算機視覺庫,它因其強大的功能、靈活性和開源特性而在開發者和研究者中備受青睞。學習OpenCV主要就是學習里面的計算機視覺算法。要學習這些算法的原理,知道它們
    的頭像 發表于 12-09 16:42 ?384次閱讀
    【AI實戰項目】基于<b class='flag-5'>OpenCV</b>的“顏色識別項目”完整<b class='flag-5'>操作</b>過程

    基于OpenCV的拆分和合并圖像通道實驗案例分享_基于RK3568教學實驗箱

    一、實驗目的 本節視頻的目的是了解圖像通道的概念,學習OpenCV的基本操作,并掌握通過OpenCV實現拆分和合并圖像通道的方法。 二、實驗原理 拆分與合并圖像 在圖像處理中,一個彩色圖像通常由多個
    發表于 12-03 14:27

    RK3568 + OpenCV 會碰撞出什么火花?案例詳解:2-1 基于OpenCV的畫線實驗

    一、實驗目的 本節視頻的目的是了解OpenCV的作用并通過OpenCV實現畫線。 二、實驗原理 OpenCV 開放源代碼計算機視覺庫 OpenCV(Open source Comput
    發表于 12-03 14:09

    如何用OpenCV的相機捕捉視頻進行人臉檢測--基于米爾NXP i.MX93開發板

    功能,首先要進行人臉檢測,判斷出圖片中人臉的位置,才能進行下一步的操作OpenCV人臉檢測方法 在OpenCV中主要使用了兩種特征(即兩種方法)進行人臉檢測,Haar特征和LBP特征。用得最多
    發表于 11-15 17:58

    【龍芯2K0300蜂鳥板試用】5 搭建opencv開發環境

    在官方提供的buildroot根文件系統中,不支持opencv庫,故需要自己增加,另外,在本地編譯的時候,需要在本地(ubuntu)上安裝對應opencv庫,這樣才能將編譯好的鏡像放到板子上跑起來
    發表于 08-27 15:08

    OpenCV圖像識別C++代碼

    安裝OpenCV庫 首先,您需要在您的計算機上安裝OpenCV庫。您可以從OpenCV官網下載預編譯的庫或從源代碼編譯。安裝完成后,確保將OpenCV的頭文件和庫文件添加到您的項目中。
    的頭像 發表于 07-16 10:42 ?2168次閱讀

    opencv圖像識別有什么算法

    OpenCV(Open Source Computer Vision Library)是一個開源的計算機視覺和機器學習軟件庫,提供了大量的圖像處理和計算機視覺相關的算法。以下是一些常見的OpenCV
    的頭像 發表于 07-16 10:40 ?1120次閱讀

    opencv-python和opencv一樣嗎

    不一樣。OpenCV(Open Source Computer Vision Library)是一個開源的計算機視覺和機器學習軟件庫,它提供了大量的圖像和視頻處理功能。OpenCV
    的頭像 發表于 07-16 10:38 ?1278次閱讀

    opencv的主要功能有哪些

    OpenCV提供了豐富的圖像處理功能,包括圖像的讀取、顯示、保存、轉換等。此外,OpenCV還支持圖像的濾波、邊緣檢測、形態學操作、圖像金字塔等高級圖像處理技術。 特征檢測與描述:OpenC
    的頭像 發表于 07-16 10:35 ?1632次閱讀

    基于OpenCV的人臉識別系統設計

    基于OpenCV的人臉識別系統是一個復雜但功能強大的系統,廣泛應用于安全監控、人機交互、智能家居等多個領域。下面將詳細介紹基于OpenCV的人臉識別系統的基本原理、實現步驟,并附上具體的代碼示例。
    的頭像 發表于 07-11 15:37 ?1.3w次閱讀

    I.MX6ULL-飛凌 ElfBoard ELF1板卡 - 如何在Ubuntu中編譯OpenCV庫(X86架構)

    在之前發布的文章中探討了交叉編譯OpenCV并部署至嵌入式系統的方法。然而,在調試階段,我們發現在 Ubuntu 環境下將 OpenCV 編譯為 X86 架構可能更加方便和高效。 通過在主機上編譯并
    發表于 06-07 09:32

    嵌入式學習-飛凌ElfBoard ELF 1板卡 - 如何在Ubuntu中編譯OpenCV

    在之前發布的文章中探討了交叉編譯OpenCV并部署至嵌入式系統的方法。然而,在調試階段,我們發現在 Ubuntu 環境下將 OpenCV 編譯為 X86 架構可能更加方便和高效。 通過在主機上編譯并
    發表于 06-07 09:21

    ELF 1技術貼|如何在Ubuntu中編譯OpenCV

    在之前發布的文章中探討了交叉編譯OpenCV并部署至嵌入式系統的方法。然而,在調試階段,我們發現在Ubuntu環境下將OpenCV編譯為X86架構可能更加方便和高效。通過在主機上編譯并使用X86架構
    的頭像 發表于 05-31 16:41 ?1180次閱讀
    ELF 1技術貼|如何在Ubuntu中編譯<b class='flag-5'>OpenCV</b>庫

    如何實現PIL和OpenCV之間圖像數據的轉換呢?

    PIL圖像數據格式轉換成OpenCV圖像數據格式
    的頭像 發表于 02-25 13:43 ?1248次閱讀

    【米爾-全志T113-i開發板試用】基礎開發環境配置和opencv-mobile移植測試

    opencv源碼,來最小化編譯的 opencv 庫 提供了 opencv 常用的功能,如讀寫圖片,處理,矩陣操作等等 版本與上游同步,無第三方依賴 在絕大多數情況下,以 1/10 的體
    發表于 01-23 15:13
    主站蜘蛛池模板: jjzz大全| 扒开美女下面粉嫩粉嫩冒白浆| Y8848高清私人影院软件优势| 老师洗澡让我吃她胸的视频 | 中文字幕不卡在线视频| 国产午夜精品福利久久| 小学生偷拍妈妈视频遭性教育| 国产成人无码精品久久久免费69| 乳交高H糙汉宠文| 共妻肉多荤文高h一女n男| 上原结衣快播| 国产午夜亚洲精品不卡电影| 亚洲高清在线mv| 久久精品AV无码亚洲色欲| 2018三级网站免费观看| 欧美97色伦综合网| 成视频高清| 色橹| 国产精品三级在线观看| 亚洲第一伊人| 旧里番6080在线观看| 丰满的大白屁股ass| 色爱AV综合区| 国产区精品综合在线| 亚洲欧美中文字幕先锋| 老司机试看午夜| 苍老师刺激的120分钟| 息与子在线交尾中文字幕| 九九热在线免费观看| 99视频在线免费| 香蕉97超级碰碰碰碰碰久| 久久无码AV亚洲精品色午夜麻豆| 把腿张开再深点好爽宝贝动态图| 小草观看免费高清视频| 两个人在线观看的视频720| 草莓在线观看| 亚洲欧美日本久久综合网站| 美女被触手注入精子强制受孕漫画| 电影果冻传媒在线播放| 亚洲中文字幕无码一去台湾| 男同志video最新猛男|