成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

python圖像處理之圖象的批量編輯

89542767 / 517人閱讀

  此篇文章主要是給大家介紹了python圖像處理之圖象的批量編輯實例詳細解讀,感興趣的小伙伴可以參考借鑒一下,希望可以有一定的幫助,愿大家多多的發(fā)展,盡快漲薪


  文章正文


  有的時候,不僅需要對一張照片予以處理,可能也會對一大批照片處理。此刻,我們通過循環(huán)系統(tǒng)去執(zhí)行解決,還可以啟用程序流程帶有的照片結(jié)合去處理。


  照片結(jié)合函數(shù)公式


  skimage.io.ImageCollection(load_pattern,load_func=None)


  這一函數(shù)是放到io模塊里的,帶兩個主要參數(shù),第一位主要參數(shù)load_pattern,表示圖片組的路線,能是一個str字符串。第2個主要參數(shù)load_func是1個調(diào)用函數(shù),人們對圖片開展批量編輯就可以用這一調(diào)用函數(shù)達到。調(diào)用函數(shù)默認設(shè)置為imread(),即默認設(shè)置這一函數(shù)是大批量讀取圖片。


  先看這個事例:


  import skimage.io as io
  from skimage import data_dir
  str=data_dir+'/*.png'
  coll=io.ImageCollection(str)
  print(len(coll))


  顯示結(jié)果為25,說明系統(tǒng)自帶了25張png的示例圖片,這些圖片都讀取了出來,放在圖片集合coll里。如果我們想顯示其中一張圖片,則可以在后加上一行代碼:

  io.imshow(coll[10])


  顯示為

01.png

  大批量載入


  當一個文件夾里,我們不僅儲放了一部分jpg格式的照片,又儲放了一部分png格式的照片,現(xiàn)在要將它們所有載入出去,應(yīng)該怎么做呢?


  import skimage.io as io
  from skimage import data_dir
  str='d:/pic/*.jpg:d:/pic/*.png'
  coll=io.ImageCollection(str)
  print(len(coll))


  拼在一起后,正中間用灶具來分隔,這樣就能把d:/pic/文件夾下的jpg和png格式的照片都載入出去。


  如果想要載入存放其他地方的照片,還可以一同加上,僅僅正中間一樣用灶具來分隔。


  io.ImageCollection()這一函數(shù)公式省略第2個主要參數(shù),就是大批量載入。假如我們并不是想大批量載入,反而是其他批量處理,如轉(zhuǎn)換格式為灰度圖像,這又應(yīng)該怎么做呢?


  轉(zhuǎn)換格式為灰度圖像


  那么就需要先界定一個函數(shù),再將這一函數(shù)公式做為第2個主要參數(shù),如:


  from skimage import data_dir,io,color
  def convert_gray(f):
  rgb=io.imread(f)
  return color.rgb2gray(rgb)
  str=data_dir+'/*.png'
  coll=io.ImageCollection(str,load_func=convert_gray)
  io.imshow(coll[10])

02.png

  這種批量操作對視頻處理是極其有用的,因為視頻就是一系列的圖片組合


  from skimage import data_dir,io,color
  class AVILoader:
  video_file='myvideo.avi'
  def __call__(self,frame):
  return video_read(self.video_file,frame)
  avi_load=AVILoader()
  frames=range(0,1000,10)#0,10,20,...
  ic=io.ImageCollection(frames,load_func=avi_load)


  這段代碼的意思,就是將myvideo.avi這個視頻中每隔10幀的圖片讀取出來,放在圖片集合中。


  得到圖片集合以后,我們還可以將這些圖片連接起來,構(gòu)成一個維度更高的數(shù)組,連接圖片的函數(shù)為:


  skimage.io.concatenate_images(ic)


  帶一個參數(shù),就是以上的圖片集合,如:


  from skimage import data_dir,io,color
  coll=io.ImageCollection('d:/pic/*.jpg')
  mat=io.concatenate_images(coll)


  使用concatenate_images(ic)函數(shù)的前提是讀取的這些圖片尺寸必須一致,否則會出錯。我們看看圖片連接前后的維度變化:


  from skimage import data_dir,io,color
  coll=io.ImageCollection('d:/pic/*.jpg')
  print(len(coll))#連接的圖片數(shù)量
  print(coll[0].shape)#連接前的圖片尺寸,所有的都一樣
  mat=io.concatenate_images(coll)
  print(mat.shape)#連接后的數(shù)組尺寸


  顯示結(jié)果:


  2


  (870,580,3)


  (2,870,580,3)


  可以看到,將2個3維數(shù)組,連接成了一個4維數(shù)組


  如果我們對圖片進行批量操作后,想把操作后的結(jié)果保存起來,也是可以辦到的。


  批量保存


  例:把系統(tǒng)自帶的所有png示例圖片,全部轉(zhuǎn)換成256*256的jpg格式灰度圖,保存在d:/data/文件夾下


  改變圖片的大小,我們可以使用tranform模塊的resize()函數(shù),后續(xù)會講到這個模塊。


  from skimage import data_dir,io,transform,color
  import numpy as np
  def convert_gray(f):
  rgb=io.imread(f)#依次讀取rgb圖片
  gray=color.rgb2gray(rgb)#將rgb圖片轉(zhuǎn)換成灰度圖
  dst=transform.resize(gray,(256,256))#將灰度圖片大小轉(zhuǎn)換為256*256
  return dst
  str=data_dir+'/*.png'
  coll=io.ImageCollection(str,load_func=convert_gray)
  for i in range(len(coll)):
  io.imsave('d:/data/'+np.str(i)+'.jpg',coll<i>)#循環(huán)保存圖片

03.png

  綜上所述,這篇文章就給大家介紹到這里了,希望可以給大家?guī)韼椭?/p>

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/128829.html

相關(guān)文章

  • Python辦公系統(tǒng)批量編輯文檔完成實例

      此篇文章主要是給大家介紹了Python辦公系統(tǒng)批量編輯文檔完成實例詳細說明,感興趣的小伙伴可以參考借鑒一下,希望可以有一定的幫助,祝愿大家多多的發(fā)展,盡早工作上得到晉升?! ∏把浴 ≌f起在工作上最讓人頭大的便是用這樣的方法解決一大堆文件夾中文檔,這其實并不難,但是卻繁。因此當遇到腳踏式的操作過程中一定要注意應(yīng)用Python來有效懶惰!這次我會以解決微博熱搜榜數(shù)據(jù)信息來實例怎么使用Python批...

    89542767 評論0 收藏0
  • Pygame精準檢測圖象撞擊問題

      此篇文章主要是闡述了Pygame精準檢測圖象撞擊,在使用Pygame寫游戲時,有些人可能遇到2個Rect目標撞擊可是目標中間也有室內(nèi)空間間距問題,這兒,將教給大家用一個方法準確地檢驗圖象撞擊,需用的小伙伴可以借鑒一下  在使用Pygame寫游戲時,有些人可能遇到2個Rect目標撞擊可是目標中間也有室內(nèi)空間間距問題,這兒,將教給大家用一個方法準確地檢驗圖象撞擊?! 〖俣ù蠹抑饕袃煞N圖象(產(chǎn)品為...

    89542767 評論0 收藏0
  • Pygame精準檢測圖象撞擊問題

      此篇文章主要是闡述了Pygame精準檢測圖象撞擊,在使用Pygame寫游戲時,有些人可能遇到2個Rect目標撞擊可是目標中間也有室內(nèi)空間間距問題,這兒,將教給大家用一個方法準確地檢驗圖象撞擊,需用的小伙伴可以借鑒一下?! ≡谑褂肞ygame寫游戲時,有些人可能遇到2個Rect目標撞擊可是目標中間也有室內(nèi)空間間距問題,這兒,將教給大家用一個方法準確地檢驗圖象撞擊?! 〖俣ù蠹抑饕袃煞N圖象(為非...

    89542767 評論0 收藏0
  • pythonopencv圖象高通濾波和低通濾波器范例編碼

      文章主要是詳細介紹了pythonopencv圖像高通濾波和低通濾波器,此文經(jīng)過案例編碼為大家介紹得非常詳盡,對大家學(xué)習(xí)培訓(xùn)和工作具有很強的參照參考意義,必須的小伙伴可以借鑒一下  序言  上一章大家反映了如何把圖象機娘傅立葉變換,將圖象由時域轉(zhuǎn)換成時域,并把低頻率挪動至圖象核心。那樣將低頻率總廳后,就可以把圖象的低頻率和高頻率分離,進而開展低通濾波器跟高通濾波的處理方法?! ≡敿毦幋a  低通濾...

    89542767 評論0 收藏0
  • python圖像處理圖象制作詳細說明

      此篇文章主要是給大家介紹了python圖像處理圖象的制作實例詳細說明,感興趣的小伙伴可以參考借鑒一下,希望可以有一定的幫助,祝愿大家多多的發(fā)展,盡早漲薪  文章正文  事實上前邊咱們就早已運用了圖象的制作,如:  io.imshow(img)  這一行代碼的本質(zhì)是運用matplotlib包對圖片開展制作,制作完成后,回到一個matplotlib類型的信息。因而,我們還可以這么寫:  impor...

    89542767 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<