最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python pygame實(shí)現(xiàn)圖像基本變換的示例詳解

 更新時(shí)間:2023年11月30日 10:33:35   作者:微小冷  
pygame的transform中封裝了一些基礎(chǔ)的圖像處理函數(shù),這篇文章主要為大家介紹了pygame實(shí)現(xiàn)圖像的基本變換,例如縮放、旋轉(zhuǎn)、鏡像等,感興趣的小伙伴可以了解一下

函數(shù)列表

pygame的transform中封裝了一些基礎(chǔ)的圖像處理函數(shù),列表如下

函數(shù)功能
flip鏡像
scale縮放至新的分辨率
scale_by根據(jù)因子進(jìn)行縮放
scale2x專業(yè)圖像倍增器
rotate旋轉(zhuǎn)
rotozoom縮放并旋轉(zhuǎn)
smoothscale平滑縮放
smoothscale_by平滑縮放至新的分辨率
chop獲取已刪除內(nèi)部區(qū)域的圖像的副本
laplacian邊緣查找
average_surfaces多個(gè)圖像求均值
average_color圖像顏色的均值
grayscale灰度化
threshold在某個(gè)閾值內(nèi)的像素個(gè)數(shù)

圖像顯示

為了演示這些功能效果,先通過pygame做一個(gè)顯示圖像的函數(shù)

import pygame

def showImg(img):
    pygame.init()
    rect = img.get_rect()
    screen = pygame.display.set_mode((rect.width, rect.height))
    while True:
        for e in pygame.event.get():
            if e.type==pygame.QUIT:
                pygame.quit()
                return
        screen.blit(img, rect)
        pygame.display.flip()


ball = pygame.image.load("intro_ball.gif")
showImg(ball)

翻轉(zhuǎn)

flip用于翻轉(zhuǎn),除了輸入圖像之外,還有兩個(gè)布爾型參數(shù),分別用于調(diào)控水平方向和豎直方向,True表示翻轉(zhuǎn),F(xiàn)alse表示不翻轉(zhuǎn)。

import pygame.transform as pt
xFlip = pt.flip(ball, True, False)
yFlip = pt.flip(ball, False, True)
xyFlip = pt.flip(ball, True, True)

效果分別如下

縮放

相對于鏡像來說,在游戲中,縮放顯然是更加常用的操作。在transform模塊中,提供了兩種縮放方案

scale(surface, size, dest_surface=None)

scale_by(surface, factor, dest_surface=None)

其中,scale將原圖像縮放至給定的size;scale_by則根據(jù)給定的factor來對圖像進(jìn)行縮放,如果factor是一個(gè)數(shù)字,那么將對兩個(gè)方向進(jìn)行同樣的縮放,如果是一個(gè)元組,比如 ( 3 , 4 ) (3,4) (3,4),那么對兩個(gè)維度分別縮放3倍和4倍。示例如下

xScale = pt.scale_by(ball, (2,1))
yScale = pt.scale(ball, (111,222))

此外,smoothscale和smoothscale_by在縮放的基礎(chǔ)上,進(jìn)行了雙邊濾波平滑,使得縮放看上去更加自然,

旋轉(zhuǎn)

通過rotate可以對圖像進(jìn)行旋轉(zhuǎn),其輸入?yún)?shù)有二,分別是待旋轉(zhuǎn)圖像與旋轉(zhuǎn)角度。這個(gè)功能可以無縫插入到前面的平拋運(yùn)動(dòng)中,即讓球在平拋時(shí)有一個(gè)旋轉(zhuǎn),示例如下

代碼如下

import time

pygame.init()

size = width, height = 640, 320
speed = [10, 0]

screen = pygame.display.set_mode(size)

ball = pygame.image.load("intro_ball.gif")
rect = ball.get_rect()

th = 0
while True:
    if pygame.QUIT in [e.type for e in pygame.event.get()]:
        break
    time.sleep(0.02)
    rect = rect.move(speed)
    if rect.right>width:
        speed = [10, 0]
        rect = ball.get_rect()
    if rect.bottom>height:
        speed[1] = -speed[1]
    speed[1] += 1
    th += 5
    screen.fill("black")
    screen.blit(pt.rotate(ball, th), rect)
    pygame.display.flip()

pygame.quit()

到此這篇關(guān)于Python pygame實(shí)現(xiàn)圖像基本變換的示例詳解的文章就介紹到這了,更多相關(guān)Python pygame圖像變換內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python中斷點(diǎn)調(diào)試pdb包的用法詳解

    Python中斷點(diǎn)調(diào)試pdb包的用法詳解

    pdb(python debugger) 是 python 中的一個(gè)命令行調(diào)試包,為 python 程序提供了一種交互的源代碼調(diào)試功能,下面就跟隨小編一起學(xué)習(xí)一下它的具體使用吧
    2024-01-01
  • 淺談Pycharm調(diào)用同級目錄下的py腳本bug

    淺談Pycharm調(diào)用同級目錄下的py腳本bug

    今天小編就為大家分享一篇淺談Pycharm調(diào)用同級目錄下的py腳本bug,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • Python的對象傳遞與Copy函數(shù)使用詳解

    Python的對象傳遞與Copy函數(shù)使用詳解

    今天小編就為大家分享一篇Python的對象傳遞與Copy函數(shù)使用詳解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • django批量導(dǎo)入xml數(shù)據(jù)

    django批量導(dǎo)入xml數(shù)據(jù)

    從網(wǎng)上下載的一些數(shù)據(jù),excel表格,xml文件,txt文件等有時(shí)候我們想把它導(dǎo)入數(shù)據(jù)庫,應(yīng)該如何操作呢?下面我們就來詳細(xì)討論下。
    2016-10-10
  • python3中的md5加密實(shí)例

    python3中的md5加密實(shí)例

    今天小編就為大家分享一篇python3中的md5加密實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • Python中new方法的詳解

    Python中new方法的詳解

    今天小編就為大家分享一篇關(guān)于Python中new方法的詳解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • Tensorflow加載預(yù)訓(xùn)練模型和保存模型的實(shí)例

    Tensorflow加載預(yù)訓(xùn)練模型和保存模型的實(shí)例

    今天小編就為大家分享一篇Tensorflow加載預(yù)訓(xùn)練模型和保存模型的實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • 使用Python實(shí)現(xiàn)pdf轉(zhuǎn)圖片再進(jìn)行OCR識別

    使用Python實(shí)現(xiàn)pdf轉(zhuǎn)圖片再進(jìn)行OCR識別

    這篇文章主要為大家詳細(xì)介紹了如何使用Python實(shí)現(xiàn)pdf轉(zhuǎn)圖片再進(jìn)行OCR識別功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-04-04
  • Python讀取Json字典寫入Excel表格的方法

    Python讀取Json字典寫入Excel表格的方法

    這篇文章主要為大家詳細(xì)介紹了Python讀取Json字典寫入Excel表格的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • Python處理unicode字符的方法詳解

    Python處理unicode字符的方法詳解

    這篇文章主要介紹了Python處理unicode字符的方法詳解,unicodedata中定義了所有Unicode字符的字符屬性,主要包含兩個(gè)功能,其一是根據(jù)名字查找字符;其二是給定字符查找其對應(yīng)的信息,需要的朋友可以參考下
    2023-08-08

最新評論

四会市| 礼泉县| 平山县| 辽阳县| 黔西县| 胶州市| 安陆市| 射洪县| 玉环县| 江口县| 濮阳县| 永年县| 沂水县| 万山特区| 定南县| 岳池县| 黔江区| 芜湖市| 石河子市| 周至县| 本溪市| 丰县| 云梦县| 景宁| 威远县| 藁城市| 武汉市| 宜州市| 黔南| 大新县| 平凉市| 桐柏县| 稷山县| 丹巴县| 叙永县| 兴山县| 宜宾县| 安宁市| 台南市| 昆山市| 封丘县|