女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

    瀏覽量

    17145
  • 代碼
    +關注

    關注

    30

    文章

    4900

    瀏覽量

    70723
  • OpenCV
    +關注

    關注

    32

    文章

    642

    瀏覽量

    42878

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

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    【Milk-V Duo S 開發板免費體驗】SDK編譯、人臉檢測、OpenCV測試

    OpenCV 常用的功能,如讀寫圖片,處理,矩陣操作等等,版本與上游同步,無第三方依賴。在絕大多數情況下,以 1/10 的體積替換官方 OpenCV,適合對體積有要求的嵌入式環境。 準備工作 下載當前
    發表于 07-11 13:48

    編譯opencv_camera_test找不到opencv.hpp怎么解決?

    1.取消makefile中的注釋 2.在k230_sdk目錄下進入docker環境后使用make mpp-apps編譯 期待結果和實際結果 期待得到opencv_camera_test.elf文件
    發表于 06-23 06:14

    如何在k230上運行OpenCV的代碼?

    如何在k230上運行OpenCV的代碼
    發表于 06-17 06:06

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

    本文將介紹基于米爾電子MYD-LMX93開發板(米爾基于NXPi.MX93開發板)的基于OpenCV的人臉檢測方案測試。OpenCV提供了一個非常簡單的接口,用于相機捕捉一個視頻(我用的電腦內置
    的頭像 發表于 04-15 11:51 ?338次閱讀
    如何用<b class='flag-5'>OpenCV</b>的相機捕捉視頻進行人臉檢測--基于米爾NXP i.MX93開發板

    OpenCV行人檢測應用方案--基于米爾全志T527開發板

    本文將介紹基于米爾電子MYD-LT527開發板(米爾基于全志T527開發板)的OpenCV行人檢測方案測試。摘自優秀創作者-小火苗一、軟件環境安裝1.安裝
    的頭像 發表于 04-10 08:03 ?734次閱讀
    <b class='flag-5'>OpenCV</b>行人檢測應用方案--基于米爾全志T527開發板

    為LSDK構建opencv時遇到的問題求解

    我正在嘗試使用 flex-builder 來運行 bld -c opencv -r ubuntu:桌面 我想要最新版本的 OpenCV。在我的 sdk.yml 文件中,我將 opencv
    發表于 03-26 08:26

    使用OpenCV保存從攝像頭捕獲的視頻時更改顏色輸出視頻收到警告怎么解決?

    保存了從配備 OpenCV* 的攝像頭捕獲的視頻。 生成更改的顏色輸出視頻。 收到警告:[ INFO:0] global .。/opencv/modules/core/src/utils
    發表于 03-05 07:20

    AI模型部署邊緣設備的奇妙之旅:如何在邊緣端部署OpenCV

    、車輛和其他重要元素。 2 基礎知識 OpenCV 是一個開源的計算機視覺和機器學習軟件庫,廣泛用于圖像處理、視頻捕捉、物體檢測等領域。一些常用操作及其目的: 讀取圖片 使用 cv2.imread
    發表于 12-14 09:31

    如何用OpenCV進行手勢識別--基于米爾全志T527開發板

    本文將介紹基于米爾電子MYD-LT527開發板(米爾基于全志T527開發板)的OpenCV手勢識別方案測試。摘自優秀創作者-小火苗米爾基于全志T527開發板一、軟件環境安裝1.安裝OpenCVsudoapt-getinstalllibopencv-devpython3-openc
    的頭像 發表于 12-13 08:04 ?1344次閱讀
    如何用<b class='flag-5'>OpenCV</b>進行手勢識別--基于米爾全志T527開發板

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

    OpenCV是一個廣受歡迎且極為流行的計算機視覺庫,它因其強大的功能、靈活性和開源特性而在開發者和研究者中備受青睞。學習OpenCV主要就是學習里面的計算機視覺算法。要學習這些算法的原理,知道它們
    的頭像 發表于 12-09 16:42 ?1406次閱讀
    【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

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

    本文將介紹基于米爾電子MYD-LMX93開發板(米爾基于NXPi.MX93開發板)的基于OpenCV的人臉檢測方案測試。OpenCV提供了一個非常簡單的接口,用于相機捕捉一個視頻(我用的電腦內置
    的頭像 發表于 11-07 09:03 ?1471次閱讀
    基于<b class='flag-5'>OPENCV</b>的相機捕捉視頻進行人臉檢測--米爾NXP i.MX93開發板

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

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