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

python實(shí)現(xiàn)灰度圖

 更新時(shí)間:2022年08月05日 10:55:17   作者:名劍求瑕  
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)灰度圖,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了python實(shí)現(xiàn)灰度圖的具體代碼,供大家參考,具體內(nèi)容如下

任務(wù)描述

背景

真彩色圖像和灰度圖像是數(shù)字圖像的兩種常見類型,如下圖所示,左圖是真彩色圖像,右圖是灰度圖像。

在真彩色圖像中,像素顏色是 RGB 顏色,每個(gè)顏色包含 R、G、B 三個(gè)顏色分量。而在灰度圖像中,像素顏色只有一個(gè)分量,稱為灰度值,其取值是 [0,255] 之間的整數(shù),灰度值越小,灰度越暗(越黑),反之越亮(越白)。

任務(wù)

本關(guān)任務(wù)是補(bǔ)全程序,使程序能將一幅真彩色圖像轉(zhuǎn)換成灰度圖像。說明如下:
1)求得的灰度值需要轉(zhuǎn)換成整數(shù),請(qǐng)使用round函數(shù)取整,如round(3.7)是將3.7四舍五入為整數(shù)4;
2)本關(guān)程序框架與上關(guān)基本相同。

相關(guān)知識(shí)

思路

真彩色圖像與灰度圖像采用的顏色模式不一樣,前者使用 RGB 顏色,有三個(gè)顏色分量,而后者使用灰度值,只有一個(gè)顏色分量,所以不能像上關(guān)一樣直接對(duì)原始圖像的像素進(jìn)行修改。
解決方法是先新建一個(gè)與真彩色圖像分辨率相同的純色灰度圖像,然后依次取出真彩色圖像中每個(gè)像素的 RGB 顏色,算出對(duì)應(yīng)的灰度值,再將此灰度值填入新建灰度圖像的對(duì)應(yīng)位置。

示例程序

示例程序見下:

from PIL import Image
img = Image.new('L', (100, 100)) ?#新建一個(gè)3×3的純黑色灰度圖像
gray = img.getpixel((50,50)) ? ? ?#取出某個(gè)像素的顏色,即灰度值
print('這是一個(gè)灰度值:', gray) ? #灰度值只包含一個(gè)整數(shù)
for x in range(100):
? ? for y in range(100):
? ? ? ? img.putpixel((x,y), 100)#將所有像素的灰度值設(shè)置為100
img.save('src/step2/student/step2_2.jpg')

可將此程序拷入右側(cè)編輯器運(yùn)行。

編程要求

在 Begin-End 區(qū)間補(bǔ)全代碼,具體要求見上。

測(cè)試說明

系統(tǒng)會(huì)檢查程序生成的 step2_2.jpg 文件,若正確則打?。?/p>

你的圖像與正確答案相同!

開始你的任務(wù)吧,祝你成功!

from PIL import Image


# 將一個(gè)RGB顏色轉(zhuǎn)換成灰度值,結(jié)果保留整數(shù)
def RGBtoGray(r, g, b):
? ? ########## Begin ##########
? ? gray = round(r*0.299 + g*0.587 + b*0.114)
? ? ########## End ##########
? ? return gray
# 將真彩色圖像轉(zhuǎn)換成灰度圖
# 真彩色和灰度圖的文件路徑分別為path1和path2
def toGrayImage(path1, path2):
? ? img1 = Image.open(path1) ?# 真彩色圖像,像素中是RGB顏色
? ? w, h = img1.size
? ? img2 = Image.new('L', (w, h)) ?# 新建一個(gè)灰度圖像,像素中是灰度值
? ? ########## Begin ##########
? ? # 此部分功能:依次取出img1中每個(gè)像素的RGB顏色,轉(zhuǎn)換成灰度值,再放到img2的對(duì)應(yīng)位置
? ? for x in range(w):
? ? ? ? for y in range(h):
? ? ? ? ? ? r, g, b = img1.getpixel((x, y)) ?# 取出顏色
? ? ? ? ? ? gray = RGBtoGray(r, g, b) # 轉(zhuǎn)成灰度值
? ? ? ? ? ? img2.putpixel((x, y), gray) ?# 放回像素

? ? ########## End ##########
? ? img2.save(path2)


path1 = 'step1.jpg' ?# 真彩色圖像
path2 = 'step2_2.jpg' ?# 灰度圖像
toGrayImage(path1, path2)

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 使用豆瓣提供的國(guó)內(nèi)pypi源

    使用豆瓣提供的國(guó)內(nèi)pypi源

    PyPI(Python Package Index)是python官方的第三方庫(kù)的倉(cāng)庫(kù),所有人都可以下載第三方庫(kù)或上傳自己開發(fā)的庫(kù)到PyPI。PyPI推薦使用pip包管理器來下載第三方庫(kù)。
    2017-07-07
  • Windows系統(tǒng)中將Python添加到系統(tǒng)環(huán)境詳細(xì)圖文教程

    Windows系統(tǒng)中將Python添加到系統(tǒng)環(huán)境詳細(xì)圖文教程

    當(dāng)在命令行使用python或pip指令時(shí),可能會(huì)遇到pip不是內(nèi)部命令的報(bào)錯(cuò),這通常是因?yàn)樵诎惭bPython時(shí)未將其添加至系統(tǒng)環(huán)境變量,或者有多個(gè)Python環(huán)境導(dǎo)致路徑不一致,文中將解決辦法介紹的非常詳細(xì),需要的朋友可以參考下
    2024-10-10
  • Python圖像處理之邊緣檢測(cè)原理詳解

    Python圖像處理之邊緣檢測(cè)原理詳解

    邊緣檢測(cè)是圖像處理和計(jì)算機(jī)視覺當(dāng)中的基本問題,邊緣檢測(cè)的目的是標(biāo)識(shí)數(shù)字圖像中亮度變化明顯的點(diǎn)。本文將通過示例和大家介紹一下邊緣檢測(cè)的原理,希望對(duì)大家有所幫助
    2022-12-12
  • Python 3.8新特征之a(chǎn)syncio REPL

    Python 3.8新特征之a(chǎn)syncio REPL

    我最近都在寫一些Python 3.8的新功能介紹的文章,在自己的項(xiàng)目中也在提前體驗(yàn)新的Python版本。這篇文章主要介紹了Python 3.8新特征之a(chǎn)syncio REPL,需要的朋友可以參考下
    2019-05-05
  • python?包之?Pillow?圖像處理教程分享

    python?包之?Pillow?圖像處理教程分享

    這篇文章主要介紹了python?包之?Pillow?圖像處理教程分享,文章基于Python的相關(guān)資料展開主題相關(guān)內(nèi)容,需要的小伙伴可以參考一下
    2022-04-04
  • 如何使用Python的OpenCV庫(kù)處理圖像和視頻

    如何使用Python的OpenCV庫(kù)處理圖像和視頻

    基于opencv可以顯示圖片,并進(jìn)行相應(yīng)的處理,下面這篇文章主要給大家介紹了關(guān)于如何使用Python的OpenCV庫(kù)處理圖像和視頻的相關(guān)資料,需要的朋友可以參考下
    2022-10-10
  • Python網(wǎng)絡(luò)編程 Python套接字編程

    Python網(wǎng)絡(luò)編程 Python套接字編程

    這篇文章主要為大家詳細(xì)介紹了Python網(wǎng)絡(luò)編程的相關(guān)資料,Python套接字編程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • 利用python的socket發(fā)送http(s)請(qǐng)求方法示例

    利用python的socket發(fā)送http(s)請(qǐng)求方法示例

    這篇文章主要給大家介紹了關(guān)于利用python的socket發(fā)送http(s)請(qǐng)求的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧
    2018-05-05
  • python輸入多行字符串的方法總結(jié)

    python輸入多行字符串的方法總結(jié)

    在本篇文章里小編給大家分享的是關(guān)于python輸入多行字符串的方法以及實(shí)例代碼,需要的朋友們可以學(xué)習(xí)下。
    2019-07-07
  • Pygame實(shí)戰(zhàn)之經(jīng)典泡泡龍小游戲

    Pygame實(shí)戰(zhàn)之經(jīng)典泡泡龍小游戲

    Python版的消除類的游戲還是很多的,今天就出一個(gè)消除類——泡泡龍小游戲。文中的示例代碼很詳細(xì),感興趣的小伙伴快來跟隨小編一起學(xué)習(xí)一下吧
    2021-12-12

最新評(píng)論

简阳市| 托里县| 寿光市| 辉县市| 梁平县| 绵阳市| 桂林市| 宜昌市| 新郑市| 奉化市| 朝阳县| 东乡| 山阳县| 普兰店市| 策勒县| 新平| 云龙县| 松江区| 焉耆| 丰宁| 永平县| 兰西县| 西充县| 响水县| 锡林郭勒盟| 饶平县| 香河县| 沈丘县| 白水县| 定远县| 陇南市| 金堂县| 格尔木市| 汕尾市| 探索| 新建县| 周至县| 理塘县| 洛浦县| 朝阳县| 胶南市|