欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python數(shù)字圖像處理實(shí)現(xiàn)圖像的形變與縮放

 更新時(shí)間:2022年06月28日 16:28:16   作者:denny402  
這篇文章主要為大家介紹了python數(shù)字圖像處理實(shí)現(xiàn)圖像的形變與縮放示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

skimage的transform模塊

圖像的形變與縮放,使用的是skimage的transform模塊,函數(shù)比較多,功能齊全。

1、改變圖片尺寸resize

函數(shù)格式為:

skimage.transform.resize(image,output_shape)

image: 需要改變尺寸的圖片

output_shape: 新的圖片尺寸

from skimage import transform,data
import matplotlib.pyplot as plt
img = data.camera()
dst=transform.resize(img, (80, 60))
plt.figure('resize')
plt.subplot(121)
plt.title('before resize')
plt.imshow(img,plt.cm.gray)
plt.subplot(122)
plt.title('before resize')
plt.imshow(dst,plt.cm.gray)
plt.show()

將camera圖片由原來的512*512大小,變成了80*60大小。從下圖中的坐標(biāo)尺,我們能夠看出來:

2、按比例縮放rescale

函數(shù)格式為:

skimage.transform.rescale(image,scale[,...])

scale參數(shù)可以是單個(gè)float數(shù),表示縮放的倍數(shù),也可以是一個(gè)float型的tuple,如[0.2,0.5],表示將行列數(shù)分開進(jìn)行縮放

from skimage import transform,data
img = data.camera()
print(img.shape)  #圖片原始大小 
print(transform.rescale(img, 0.1).shape)  #縮小為原來圖片大小的0.1倍
print(transform.rescale(img, [0.5,0.25]).shape)  #縮小為原來圖片行數(shù)一半,列數(shù)四分之一
print(transform.rescale(img, 2).shape)   #放大為原來圖片大小的2倍

結(jié)果為:

(512, 512)
(51, 51)
(256, 128)
(1024, 1024)

3、旋轉(zhuǎn) rotate

skimage.transform.rotate(image,angle[,...],resize=False)

angle參數(shù)是個(gè)float類型數(shù),表示旋轉(zhuǎn)的度數(shù)

resize用于控制在旋轉(zhuǎn)時(shí),是否改變大小 ,默認(rèn)為False

from skimage import transform,data
import matplotlib.pyplot as plt
img = data.camera()
print(img.shape)  #圖片原始大小
img1=transform.rotate(img, 60) #旋轉(zhuǎn)90度,不改變大小 
print(img1.shape)
img2=transform.rotate(img, 30,resize=True)  #旋轉(zhuǎn)30度,同時(shí)改變大小
print(img2.shape)   
plt.figure('resize')
plt.subplot(121)
plt.title('rotate 60')
plt.imshow(img1,plt.cm.gray)
plt.subplot(122)
plt.title('rotate  30')
plt.imshow(img2,plt.cm.gray)
plt.show()

顯示結(jié)果:

4、圖像金字塔

以多分辨率來解釋圖像的一種有效但概念簡單的結(jié)構(gòu)就是圖像金字塔。圖像金字塔最初用于機(jī)器視覺和圖像壓縮,一幅圖像的金字塔是一系列以金字塔形狀排列的分辨率逐步降低的圖像集合。金字塔的底部是待處理圖像的高分辨率表示,而頂部是低分辨率的近似。當(dāng)向金字塔的上層移動(dòng)時(shí),尺寸和分辨率就降低。

在此,我們舉一個(gè)高斯金字塔的應(yīng)用實(shí)例,函數(shù)原型為:

skimage.transform.pyramid_gaussian(image, downscale=2)

downscale控制著金字塔的縮放比例

import numpy as np
import matplotlib.pyplot as plt
from skimage import data,transform
image = data.astronaut()  #載入宇航員圖片
rows, cols, dim = image.shape  #獲取圖片的行數(shù),列數(shù)和通道數(shù)
pyramid = tuple(transform.pyramid_gaussian(image, downscale=2))  #產(chǎn)生高斯金字塔圖像
#共生成了log(512)=9幅金字塔圖像,加上原始圖像共10幅,pyramid[0]-pyramid[1]
composite_image = np.ones((rows, cols + cols / 2, 3), dtype=np.double)  #生成背景
composite_image[:rows, :cols, :] = pyramid[0]  #融合原始圖像
i_row = 0
for p in pyramid[1:]:
    n_rows, n_cols = p.shape[:2]
    composite_image[i_row:i_row + n_rows, cols:cols + n_cols] = p  #循環(huán)融合9幅金字塔圖像
    i_row += n_rows
plt.imshow(composite_image)
plt.show()

上圖,就是10張金字塔圖像,下標(biāo)為0的表示原始圖像,后面每層的圖像行和列變?yōu)樯弦粚拥囊话耄敝磷優(yōu)?

除了高斯金字塔外,還有其它的金字塔,如:

skimage.transform.pyramid_laplacian(image, downscale=2):

以上就是python數(shù)字圖像處理實(shí)現(xiàn)圖像的形變與縮放的詳細(xì)內(nèi)容,更多關(guān)于python數(shù)字圖像形變與縮放的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • python使用sessions模擬登錄淘寶的方式

    python使用sessions模擬登錄淘寶的方式

    這篇文章主要介紹了python使用sessions模擬登錄淘寶的方式,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下
    2019-08-08
  • Python3enumrate和range對(duì)比及示例詳解

    Python3enumrate和range對(duì)比及示例詳解

    這篇文章主要介紹了Python3enumrate和range對(duì)比及示例詳解,在Python中,enumrate和range都常用于for循環(huán)中,enumrate函數(shù)用于同時(shí)循環(huán)列表和元素,而range()函數(shù)可以生成數(shù)值范圍變化的列表,而能夠用于for循環(huán)即都是可迭代的,需要的朋友可以參考下
    2019-07-07
  • python通過opencv調(diào)用攝像頭操作實(shí)例分析

    python通過opencv調(diào)用攝像頭操作實(shí)例分析

    在本篇文章里小編給大家整理的是一篇關(guān)于python通過opencv調(diào)用攝像頭操作實(shí)例分析內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。
    2021-06-06
  • 深入理解Python虛擬機(jī)之進(jìn)程、線程和協(xié)程區(qū)別詳解

    深入理解Python虛擬機(jī)之進(jìn)程、線程和協(xié)程區(qū)別詳解

    在本篇文章當(dāng)中深入分析在 Python 當(dāng)中 進(jìn)程、線程和協(xié)程的區(qū)別,這三個(gè)概念會(huì)讓人非常迷惑,如果沒有深入了解這三者的實(shí)現(xiàn)原理,只是看一些文字說明,也很難理解,在本篇文章當(dāng)中我們將通過分析部分源代碼來詳細(xì)分析一下這三者根本的區(qū)別是什么,需要的朋友可以參考下
    2023-10-10
  • python 無損批量壓縮圖片(支持保留圖片信息)的示例

    python 無損批量壓縮圖片(支持保留圖片信息)的示例

    這篇文章主要介紹了python 無損批量壓縮圖片的示例,幫助大家更好的利用python處理圖片,感興趣的朋友可以了解下
    2020-09-09
  • Python3 Click模塊的使用方法詳解

    Python3 Click模塊的使用方法詳解

    這篇文章主要介紹了Python3 Click模塊的使用方法詳解,需要的朋友可以參考下
    2020-02-02
  • pygame實(shí)現(xiàn)俄羅斯方塊游戲(AI篇2)

    pygame實(shí)現(xiàn)俄羅斯方塊游戲(AI篇2)

    這篇文章主要為大家詳細(xì)介紹了pygame實(shí)現(xiàn)俄羅斯方塊游戲AI的第2篇,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • pycharm如何添加解釋器

    pycharm如何添加解釋器

    這篇文章主要介紹了pycharm如何添加解釋器問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • pycharm通過ssh遠(yuǎn)程連接服務(wù)器并運(yùn)行代碼詳細(xì)圖文

    pycharm通過ssh遠(yuǎn)程連接服務(wù)器并運(yùn)行代碼詳細(xì)圖文

    在運(yùn)行項(xiàng)目的過程中,由于自己電腦GPU不夠,通常需要將項(xiàng)目放到服務(wù)器上運(yùn)行,這時(shí)就會(huì)遇到如何將pycharm和服務(wù)器進(jìn)行連接,下面這篇文章主要給大家介紹了關(guān)于pycharm通過ssh遠(yuǎn)程連接服務(wù)器并運(yùn)行代碼的相關(guān)資料,需要的朋友可以參考下
    2024-03-03
  • python配置文件寫入過程詳解

    python配置文件寫入過程詳解

    這篇文章主要介紹了python配置文件寫入過程詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-10-10

最新評(píng)論