衡阳派盒市场营销有限公司

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

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

3天內不再提示

如何使人工系統從圖像或多維數據中“感知”

jt_rfid5 ? 來源:3D視覺開發者社區 ? 作者:吃貓的魚python ? 2022-10-09 16:19 ? 次閱讀

一、什么是計算機視覺

計算機視覺是一門研究如何使機器“看”的科學,更進一步的說,就是是指用攝影機和電腦代替人眼對目標進行識別、跟蹤和測量等機器視覺,并進一步做圖形處理,使電腦處理成為更適合人眼觀察或傳送給儀器檢測的圖像。作為一個科學學科,計算機視覺研究相關的理論和技術,試圖建立能夠從圖像或者多維數據中獲取‘信息’的人工智能系統。這里所指的信息指Shannon定義的,可以用來幫助做一個“決定”的信息。因為感知可以看作是從感官信號中提取信息,所以計算機視覺也可以看作是研究如何使人工系統從圖像或多維數據中“感知”的科學。

視覺是各個應用領域,如制造業、檢驗、文檔分析、醫療診斷,和軍事等領域中各種智能/自主系統中不可分割的一部分。由于它的重要性,一些先進國家,例如美國把對計算機視覺的研究列為對經濟和科學有廣泛影響的科學和工程中的重大基本問題,即所謂的重大挑戰(grand challenge)。

計算機視覺的挑戰是要為計算機和機器人開發具有與人類水平相當的視覺能力。機器視覺需要圖象信號,紋理和顏色建模,幾何處理和推理,以及物體建模。一個有能力的視覺系統應該把所有這些處理都緊密地集成在一起。

我們目前如果是在校學生,對于計算機視覺和機器學習的相關知識的學習是非常有用的,無論是對于自己的工作前景還是相關論文的撰寫都是非常有用的,而且目前對于計算機的相關知識已經設計到了各個專業領域,其中包括醫學領域(計算機視覺分析CT成像)、電學領域(使用matlab及相關領域畫圖)、人臉識別和車牌識別等等。而且有想要做交叉學科的對于計算機可以和任意領域及進行無障礙交叉。

由于我這個理工男的語文功底并不好,語言組織能力不強,所以我們今天就啰嗦到這里,總結一下就是計算機視覺及機器學習等和計算機相關的東西特別重要!

二、圖片處理基礎操作

首先我們來看一段簡單的計算機視覺相關代碼:

import cv2img=cv2.imread(‘path’)#path指圖片相關路徑cv2.imshow(‘Demo’,img)cv2.nameWindow(‘Demo’)cv2.waitKey(0)cv2.destroyAllWindows()

這段代碼就可以在計算機中顯示出img的相關圖像。接下來我們講解一下每一步的相關操作。

圖片處理:讀入圖像

相關函數:image=cv2.imread(文件名相關路徑[顯示控制參數])

文件名:完整的路徑。

其中參數包括:

cv.IMREAD_UNCHANGED :表示和原圖像一致

cv.IMREAD_GRAYSCALE : 表示將原圖像轉化為灰色圖像。

cv.IMREAD_COLOR:表示將原圖像轉化為彩色圖像。

例如:

cv2.imread(‘d:image.jpg’,cv.IMREAD_UNCHANGED)

圖片處理:顯示圖像

相關函數:None=cv2.imshow(窗口名,圖像名)例如:

cv2.imshow(“demo”,image)但是在OpenCV中我們圖像顯示還是要加上相關約束:

retval=cv2.waitKey([delay])如果沒有這個限制,那么顯示的圖像就會一閃而過,就會發生錯誤。其中delay參數包括:dealy=0,無限等待圖像顯示,直到關閉。也是waitKey的默認數值。delay《0,等待鍵盤點擊結束圖像顯示,也就是說當我們敲擊鍵盤的時候,圖像結束顯示。delay》0,等待delay毫秒后結束圖像顯示。最后我們還需要顯示

cv2.destroyAllWindows()

把圖像從內存中徹底刪除。

圖片處理:圖像保存

相關函數:retval=cv2.imwrite(文件地址,文件名)

例如

cv2.imwrite(‘D:test.jpg’,img)

將img保存到了路徑D: est.jpg

三、圖像處理入門基礎

圖像成像原理介紹

首先我們第一個要深深深深的刻在腦子里的概念就是:

——圖片是由像素點構成的生動一點表示就是這樣:

這樣就可以完美的展示出計算機圖像的成像原理,就是用一個個有顏色的像素點拼接而成的。

圖像分類

圖像一般分為三類:

一、二值圖像

二值圖像表示的意思就是每一個像素點只由0和1構成,0表示黑色,1表示白色,而且這里的黑色和白色是純黑和純白。所以我們看到的圖像也就是這個樣子。

二、灰度圖像

灰度圖像就是一個8位的位圖。什么意思呢?就是說00000001一直到11111111,這就是二進制表示。如果表示成我們常用的十進制就是0-255。其中0就表示純黑色,255就表示純白色,中間就是處于純黑色到純白色的相關顏色。

灰度圖像一塊像素點:

三、彩色圖像(RGB)計算機中所有的顏色都可以由R(紅色通道)、G(綠色通道)、B(藍色通道)來組成,其中每一個通道都有0-255個像素顏色組成。比如說R=234,G=252,B=4就表示黃色。顯示出來的也是黃色。所以說彩色圖像由三個面構成,分別對應R,G,B。

所以說我們就可以知道復雜程度排序的話就是:彩色圖像-灰度圖像-二值圖像。所以我們在進行人臉項目或者是車牌識別項目中最最最常用的操作就是將彩色圖像轉化為灰度圖像,然后將灰度圖像轉為最簡單的二值圖像。

四、像素處理操作

讀取像素

相關函數:返回值=圖像(位置參數) 我們先以灰度圖像,返回灰度值:

p=img[88,142]print§

這里我們就可以返回圖片坐標[88,142]處的灰度值。然后我們以彩色圖像為例子:我們知道彩色圖像由BGR三個通道的值構成。那么我們需要返回三個數值:

blue=img[78,125,0]green=img[78,125,1]red=img[78,125,2]print(blue,green,red)

這樣我們就返回了這三個數值。

修改像素

直接暴力修改。對于灰度圖像, img[88,99]=255對于彩色圖像,img[88,99,0]=255img][88,99,1]=255img[88,99,2]=255這里也可以寫成img[88,99]=[255,255,255]等同于上方。改動多個像素點例如還是以彩色圖像為例子:

i[100:150,100:150]=[255,255,255]

意思也就是將圖像橫坐標100到150和縱坐標100到150的這個區間全部用白色替代。

使用python中的numpy修改像素點

讀取像素 相關函數:返回值=圖像.item(位置參數) 我們以灰度圖像為例: o=img,item(88,142) print(o) 對于彩色圖像我們還是: blue=img.item(88,142,0) green=img.item(88,142,1) red=img.item(88,142,2) 然后print(blue,green,red) 修改像 圖像名.itemset(位置,新的數值) 我們以灰度圖像為例子: img.itemset((88,99),255) 對于BGR圖像: img.itemset((88,99,0),255) img.itemset((88,99,1),255) img.itemset((88,99,2),255)

							import cv2import numpy as np i=cv2.imread('path',cv2.IMREAD_UNCHANGED)print(i.item(100100))i.itemset((100100),255)print(i,item(100100))

通過這段代碼我們就可以看得出來像素的更改。 對于彩色圖像也是一樣。

五、獲取圖像屬性

形狀

shape可以獲取圖像的形狀,返回值包含行數、列數通道數的元組。灰度圖像返回行數列數 彩色圖像返回行數、列數、通道數。


							import cv2img1=cv2.imread('灰度圖像')print(img1.shape)

像素數目

size可以獲取圖像的像素數目。灰度圖像:行數列數 彩色圖像:行數列數*通道數

圖像類型

dtype返回的是圖像的數據類型


							import cv2img=cv2.imread('圖像名稱')print(img.dtype)

六、圖像ROI

ROI(region of interest)表示感興趣區域
  • 從被處理的圖像中以方框、圓、橢圓或者不規則多邊形等方式勾勒出需要處理的區域。

  • 可以通過各種算子(operator)和函數來求ROI,并進行下一步操作。


							import cv2import numpy as npa=cv2.imread('path')b=np.ones((101,101,3))b=a[220:400,250:350]a[0:101,0:101]=bcv2.imshow('o',a)cv2.waitKey()cv2.destroyAllWindows()
							

我們還可以將感興趣的圖像加入到別的圖像當中。

七、通道的拆分與合并

拆分


							import cv2img=cv2.imread('圖像名')b = img[ : , : , 0 ]g = img[ : , : , 1 ]r = img[ : , : , 2 ]
							我們在OpenCV中有專門拆分通道的函數: cv2.split(img)

							import cv2import numpy as npa=cv2.imread("imagelenacolor.png")b,g,r=cv2.split(a)cv2.imshow("B",b)cv2.imshow("G",g)cv2.imshow("R",r)cv2.waitKey()cv2.destroyAllWindows()合并

							import cv2import numpy as npa=cv2.imread("imagelenacolor.png")b,g,r=cv2.split(a)m=cv2.merge([b,g,r])cv2.imshow("merge",m)cv2.waitKey()cv2.destroyAllWindows()
							審核編輯:郭婷

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

    關注

    162

    文章

    4406

    瀏覽量

    120740
  • 人工智能
    +關注

    關注

    1796

    文章

    47683

    瀏覽量

    240313

原文標題:【光電智造】計算機視覺及其圖像處理操作

文章出處:【微信號:今日光電,微信公眾號:今日光電】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    超簡單的計算機視覺書推薦

    如何使人工系統圖像多維
    的頭像 發表于 07-01 10:28 ?3465次閱讀

    未來已來,多傳感器融合感知是自動駕駛破局的關鍵

    的信息,將感知系統感知維度擴展以實現多維度(多模態)感知目標的完整信息。如下圖示例,芯片將攝像頭圖像
    發表于 04-11 10:26

    FPGA在人工智能的應用有哪些?

    ,FPGA可以快速調整其硬件結構以適應新的算法,而無需更換整個硬件系統。 二、云計算加速FPGA也被廣泛應用于云計算領域,用于加速各種網絡功能,如數據包的控制、分類和改寫等。這樣可以提供更快速、穩定
    發表于 07-29 17:05

    基于SoPC的自感知運動圖像采集系統設計

    硬盤,而在SoPC系統直接實現SD卡的圖像采集數據文件存儲在國內還未見報道。  另外還提出了一種新的適合在FPGA硬件實現的快速運動檢
    發表于 11-01 17:21

    全高級駕駛員的感知系統

    道路安全摩爾定律受益良多,處理能力的提升以及 CMOS 圖像傳感器 (CIS) 和其他傳感器技術的發展,讓車輛制造商得以推出高級駕駛員感知系統
    發表于 05-13 08:12

    通過深度學習提高和發展車輛感知

    自動泊車輔助、自動緊急制動、車道保持輔助、駕駛員疲勞警報等。基于攝像頭的感知功能在當今的車輛至關重要。感知系統的功能與人體具有很強的相似性:攝像頭
    發表于 11-10 08:09

    基于SoPC的自感知運動圖像采集系統設計

    基于SoPC的自感知運動圖像采集系統設計  引 言   近年來,嵌入式圖像采集技術得到快速發展,但由于嵌入式系統的處理、傳輸和存儲
    發表于 11-25 11:02 ?943次閱讀

    多維數據集是什么

    使用多維數據集向導,可以在 SQL Server 2005 輕松定義簡單的多維數據集。該向導可以幫助您為
    的頭像 發表于 02-24 10:48 ?9702次閱讀
    <b class='flag-5'>多維</b><b class='flag-5'>數據</b>集是什么

    計算機視覺是什么

    感官信號中提 取信息,所以計算機視覺也可以看作是研究如何使人工系統圖像
    的頭像 發表于 12-08 09:24 ?2.1w次閱讀

    計算機視覺原理分析及其應用

    感官信號中提 取信息,所以計算機視覺也可以看作是研究如何使人工系統圖像
    的頭像 發表于 07-30 16:50 ?8853次閱讀

    用于計算機視覺訓練的圖像數據

    ? 計算機視覺使計算機能夠理解圖像和視頻的內容。計算機視覺的目標是使人類視覺系統可以實現任務自動化。 計算機視覺任務包括圖像采集、
    的頭像 發表于 12-31 09:33 ?2396次閱讀

    用于計算機視覺訓練的圖像數據

    計算機視覺使計算機能夠理解圖像和視頻的內容。計算機視覺的目標是使人類視覺系統可以實現任務自動化。計算機視覺任務包括圖像采集、
    的頭像 發表于 02-12 16:13 ?1440次閱讀

    機器學習和計算機視覺的前20個圖像數據

    計算機視覺使計算機能夠理解圖像和視頻的內容。計算機視覺的目標是使人類視覺系統可以實現任務自動化。計算機視覺任務包括圖像采集、
    發表于 01-28 07:40 ?5次下載
    機器學習和計算機視覺的前20個<b class='flag-5'>圖像</b><b class='flag-5'>數據</b>集

    計算機視覺的立體視覺和深度感知Python示例實現

    人工智能和圖像處理的迷人世界,這些概念在使機器能夠像我們的眼睛一樣感知我們周圍的三維世界
    的頭像 發表于 11-21 10:50 ?713次閱讀

    智能感知系統的組成主要包含哪些

    智能感知系統是一種利用人工智能技術和感知技術,通過感知環境的信息并對其進行處理和分析的
    的頭像 發表于 12-01 15:26 ?5241次閱讀
    大发888总结经验| 将军百家乐官网的玩法技巧和规则| 反赌百家乐官网的玩法技巧和规则| 网上百家乐娱乐平台| 五台县| 顶级赌场代理| 百家乐官网网投注| 百家乐官网手机投注平台| 百家乐园鼎丰娱乐城| 永利高百家乐官网进不去| 名仕棋牌官网| 永利高a1| 百家乐开线| 新花园百家乐的玩法技巧和规则| 康莱德百家乐的玩法技巧和规则| 大发888资讯网007| 如意坊娱乐城| 百家乐官网视频表演| 百家乐官网时时彩网站| 广发百家乐官网的玩法技巧和规则| 百家乐信用哪个好| 百家乐官网高手怎么下注| 百家乐娱乐城注册| 新乐园百家乐娱乐城| 大发888娱乐城 casino| 康马县| E世博百家乐官网娱乐城| 做生意什么花风水好| 电子百家乐技巧| 大发888-娱乐平台| 百家乐官网庄闲作千| 机器百家乐官网作弊| 澳门百家乐实战视频| 24山向阴阳图| 百利宫百家乐的玩法技巧和规则| 百家娱乐城| 百家乐官网补牌规律| 凤凰百家乐官网的玩法技巧和规则 | 星空棋牌舟山清墩| 百家乐官网最新投注方法| 百家乐策略与心得|