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

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

3天內(nèi)不再提示

圖像處理技術(shù)入門

jf_78858299 ? 來源:算法與編程之美 ? 作者: 馬原濤 ? 2023-02-08 11:04 ? 次閱讀

基本介紹

圖像增強技術(shù)的作用,簡單點說,就是通過對圖像進行加工處理,使圖像能更好的在其他領(lǐng)域起作用,比如人臉識別,圖像分類等人工智能領(lǐng)域,又或者是在通信領(lǐng)域,通過加工恢復圖像在傳輸中丟失的某些東西。

那么什么又是圖像增強呢?通過對圖像進行一些加工,從簡單的裁剪、變換灰度等到復雜的各種濾波公式去噪點等等 ,大致滿足以下兩點的都屬于圖像增強的一部分。

1.改變圖像視覺效果,使其能更好的應用在某類場景中

2.突出圖片某部分特征,滿足某些特殊分析的需要。

在實現(xiàn)具體算法,我們總需要先思考大致的思路。學習圖像增強技術(shù)也是如此,在學習這門新技術(shù)前,我們可以根據(jù)一些以往的經(jīng)驗先想想大概要做些什么。

  1. 圖像的收集
  2. 圖像的輸入
  3. 圖像的處理
  4. 圖像的輸出

圖像的收集

這里主要涉及的是從視頻中截取我們需要的圖片。需要使用到的軟件“ffmpeg”。

安裝

通過網(wǎng)頁搜索直接進入官網(wǎng)點擊“Download”,選擇自己電腦系統(tǒng)后,點擊下方紅色勾

選區(qū)域,進入下載界面,只用看自己電腦是64位/32位,點擊下載。

下載好后,配置環(huán)境變量。

右鍵‘我的電腦’,--屬性—高級系統(tǒng)設置—環(huán)境變量—用戶變量—編輯‘path’—添加ffmpeg軟件的文件夾下的bin文件的路徑。

使用

通過‘cmd’命令行執(zhí)行以下操作:

‘ffmpeg -i F -r K -f image2 image-%05d.jpg’

F:需要處理視頻的地址。

K:填一個數(shù)字表示每秒截幾張圖,填類似1/1的形式表示一幀截一張圖。

其他更詳細用法可以自行百度,溫馨提示:在哪個文件夾執(zhí)行命令操作生成

的圖片就保存在哪個文件夾。

圖像的輸入

很多時候我們需要處理的是大量的圖片,這就需要批量的處理文件。

| #需要用到os和cv2庫(安裝請安裝opencv,導入請導入cv2

imagelist=os.listdir(path)#讀取path目錄下所有文件的名字

for i in imagelist:

if(i.endswith('.jpg' or '.png')):

#如果文件以jpg或者png結(jié)尾image=cv2.imread(path+'/'+i)#讀取圖片

圖像的處理

圖像增強技術(shù)的處理技術(shù)很多,先從一些簡單操作開始。如圖像的裁剪、旋轉(zhuǎn)、鏡像翻轉(zhuǎn)和縮放等基本操作開始,主要使用cv2庫。

#裁剪(crop)

Image=cv2.imread(‘某張圖片地址’) #讀取圖片

sp=image.shape #讀取圖像的形狀信息并通過數(shù)組輸出[圖像的高,圖像的寬,圖像通道數(shù)]

h=sp[0]

w=sp[1]

#截取圖像某個區(qū)域,可配合random庫隨機截取,也可以自己設置截取范圍

y1=int((1/3)*h)

y2=int((2/3)*h)

x1=int((1/3)*w)

x2=int((2/3)*w)

img=image[y1:y2,x1:x2]

#將圖片左上角視為原點,截取y1到y(tǒng)2、x1到x2的區(qū)域

#旋轉(zhuǎn)(roating)

h,w=image.shape[:2]

center=(h//2,w//2)#旋轉(zhuǎn)中心

#圖片旋轉(zhuǎn)

#degree旋轉(zhuǎn)角度,size旋轉(zhuǎn)后的大小,填1為等比例旋轉(zhuǎn)。

M = cv2.getRotationMatrix2D(center, degree, size)

#執(zhí)行旋轉(zhuǎn)操作,roated為旋轉(zhuǎn)后的圖片

roated = cv2.warpAffine(image, M, (w, h))

#鏡像翻轉(zhuǎn)(flip)

image=cv2.imread(path)

image=cv2.flip(image,1)#圖片翻轉(zhuǎn)

#縮放

image=cv2.imread(path)

image=cv2.resize(image,(192,192))#括號內(nèi)填縮放后的大小

圖像的輸出

除了直接保存為圖片形式外

我們在使用這些處理后的圖片時,更多的要用到名為“npz”的文件格式。

data=[]#該數(shù)組用于存儲圖片

label=[]#用于儲存圖片類型,看一個實例

pathone='D:\\imgCut\\Archive\\resize\\nosmoke'#無煙集圖片地址

pathtwo="D:\\imgCut\\Archive\\resize\\smoke"#有煙集圖片地址

#0代表無煙圖片,1代表有煙圖片

def saveZ(pathone,pathtwo):

data=[]

label=[]

imagelist_one=os.listdir(pathone)#讀取目錄下所有文件的名字

imagelist_two=os.listdir(pathtwo)



for i in imagelist_one:

   

    if(i.endswith('.jpg' or '.png')):

            #如果文件以jpg結(jié)尾

        image=cv2.imread(pathone+'\\\\'+i)

        data.append(image)#將圖片加入數(shù)組,這里存入的是圖片本身而不是一個引用。

        label.append(0)

       

for i in imagelist_two:

   

    if(i.endswith('.jpg' or '.png')):

            #如果文件以jpg結(jié)尾

        image=cv2.imread(pathtwo+'\\\\'+i)

        data.append(image)

        label.append(1)

np.savez('arc.npz', data=data, label=label)

#文件以npz形式儲存,里面有兩個數(shù)組data,label

之后我們就可以在其他地方直接調(diào)用這個文件里的數(shù)組

arc=np.load('arc.npz')#導入這個文件data=arc['data']#讀取里面的data數(shù)組和label數(shù)組label=arc['label']

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

    關(guān)注

    26

    文章

    1268

    瀏覽量

    56371
  • 人工智能
    +關(guān)注

    關(guān)注

    1787

    文章

    46061

    瀏覽量

    235008
  • 人臉識別
    +關(guān)注

    關(guān)注

    76

    文章

    3998

    瀏覽量

    81359
收藏 人收藏

    評論

    相關(guān)推薦

    零基礎(chǔ) 圖像處理

    今年讀研,導師要我搞圖像處理這方面,但我零基礎(chǔ),就買了本MATLAB圖像處理寶典開始看,這樣學行嗎,唉。。。希望各位高手指導下引導我入門,謝
    發(fā)表于 07-05 09:32

    視頻監(jiān)控系統(tǒng)圖像處理技術(shù)應用解析

    視頻監(jiān)控系統(tǒng)圖像處理技術(shù)應用解析隨著物聯(lián)網(wǎng)和移動互聯(lián)網(wǎng)技術(shù)的迅速發(fā)展,傳統(tǒng)的IT架構(gòu)逐漸云端化,計算資源和承載業(yè)務將進一步深度整合,在物聯(lián)網(wǎng)和云計算匯聚的潮流中,視頻監(jiān)控
    發(fā)表于 09-23 15:00

    淺談大數(shù)據(jù)視頻圖像處理系統(tǒng)技術(shù)

    淺談大數(shù)據(jù)視頻圖像處理系統(tǒng)技術(shù)近年來,隨著計算機、網(wǎng)絡以及圖像處理、傳輸技術(shù)的飛速發(fā)展,視頻監(jiān)控
    發(fā)表于 09-24 15:22

    計算機數(shù)字圖像圖像處理技術(shù)的發(fā)展前景

    計算機數(shù)字圖像圖像處理技術(shù)的發(fā)展前景 圖像處理軟件是處理圖像
    發(fā)表于 09-24 15:24

    數(shù)字圖像處理技術(shù)方法和應用

    圖像,常用的圖像處理方法有圖像增強、復原、編碼、壓縮等。下面維視圖像為您簡單介紹一下數(shù)字圖像
    發(fā)表于 11-18 11:45

    形態(tài)學圖像處理綜合示例_《OpenCV3編程入門》書本配套源代碼

    《OpenCV3編程入門》書本配套源代碼:形態(tài)學圖像處理綜合示例
    發(fā)表于 06-06 15:52 ?8次下載

    數(shù)字圖像處理技術(shù)__PPT - 復件

    數(shù)字圖像處理是信息學科一個重要的類別,可以和電子技術(shù)結(jié)合發(fā)展。數(shù)字圖像處理技術(shù)__PPT - 復
    發(fā)表于 06-24 15:33 ?0次下載

    形態(tài)學圖像處理綜合示例_OpenCV3編程入門-源碼例程

    OpenCV3編程入門-源碼例程全集-形態(tài)學圖像處理綜合示例,感興趣的小伙伴們可以瞧一瞧。
    發(fā)表于 09-18 16:55 ?0次下載

    數(shù)字圖像信號處理及其圖像傳感技術(shù)的介紹

    的要求越來越高,提升監(jiān)控圖像的實用價值已經(jīng)成為社會向整個監(jiān)控行業(yè)提出的新要求,智能化和高清化更加加快了數(shù)字圖像處理技術(shù)研發(fā)進程,圖像信號
    發(fā)表于 10-13 17:13 ?17次下載

    圖像處理技術(shù)是什么_圖像處理技術(shù)現(xiàn)狀和發(fā)展前景

    數(shù)字圖像處理技術(shù)正在向處理算法更優(yōu)化、處理速度更快、處理后的
    發(fā)表于 01-12 17:47 ?5.5w次閱讀

    什么是圖像處理技術(shù)

    圖像識別中,圖像質(zhì)量的好壞直接影響識別算法的設計與效果精度,那么除了能在算法上的優(yōu)化外,預處理技術(shù)在整個項目中占有很重要的因素,然而人們往往忽略這一點。
    的頭像 發(fā)表于 08-31 10:13 ?4077次閱讀
    什么是<b class='flag-5'>圖像</b>預<b class='flag-5'>處理</b><b class='flag-5'>技術(shù)</b>

    機器視覺:圖像處理技術(shù)、圖像增強技術(shù)

    對原始獲取圖像進行一系列的運算處理,稱為圖像處理。圖像處理是機器視覺
    發(fā)表于 10-20 10:17 ?948次閱讀
    機器視覺:<b class='flag-5'>圖像</b><b class='flag-5'>處理</b><b class='flag-5'>技術(shù)</b>、<b class='flag-5'>圖像</b>增強<b class='flag-5'>技術(shù)</b>

    醫(yī)療圖像處理的關(guān)鍵領(lǐng)域及技術(shù)挑戰(zhàn)

    醫(yī)療圖像處理的最后一部分涉及對所獲取信息的管理,包括用于圖像數(shù)據(jù)存儲、檢索和傳輸?shù)母鞣N技術(shù)。制定了若干標準和技術(shù),用于
    發(fā)表于 10-31 11:43 ?595次閱讀
    醫(yī)療<b class='flag-5'>圖像</b><b class='flag-5'>處理</b>的關(guān)鍵領(lǐng)域及<b class='flag-5'>技術(shù)</b>挑戰(zhàn)

    圖像處理怎么入門?

    總之圖像處理的基本思想還是要立足于圖像本身,要深度到圖像內(nèi)部結(jié)構(gòu)中,思維要靈活。我當時做本科畢設時,怎么也不知道圖像和高維空間中的點之間有什
    的頭像 發(fā)表于 01-08 09:51 ?323次閱讀

    Workshop!圖像處理和識別入門培訓

    技術(shù)進行結(jié)合,做擴展應用。實踐平臺:本次動手實踐主題我們將圍繞“人工智能-圖像處理和識別入門”來展開!并使用RT-Thread社區(qū)團隊聯(lián)合英飛凌打造的PSoC62
    的頭像 發(fā)表于 03-20 08:34 ?202次閱讀
    Workshop!<b class='flag-5'>圖像</b><b class='flag-5'>處理</b>和識別<b class='flag-5'>入門</b>培訓