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

用python處理圖片實現(xiàn)圖像中的像素訪問

 更新時間:2018年05月04日 11:22:44   作者:denny402  
本篇文章主要介紹了用python處理圖片實現(xiàn)圖像中的像素訪問,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

前面的一些例子中,我們都是利用Image.open()來打開一幅圖像,然后直接對這個PIL對象進行操作。如果只是簡單的操作還可以,但是如果操作稍微復(fù)雜一些,就比較吃力了。因此,通常我們加載完圖片后,都是把圖片轉(zhuǎn)換成矩陣來進行更加復(fù)雜的操作。

python中利用numpy庫和scipy庫來進行各種數(shù)據(jù)操作和科學(xué)計算。我們可以通過pip來直接安裝這兩個庫

pip install numpy
pip install scipy

以后,只要是在python中進行數(shù)字圖像處理,我們都需要導(dǎo)入這些包:

from PIL import Image
import numpy as np
import matplotlib.pyplot as plt

打開圖像并轉(zhuǎn)化為矩陣,并顯示:

from PIL import Image
import numpy as np
import matplotlib.pyplot as plt
img=np.array(Image.open('d:/lena.jpg')) #打開圖像并轉(zhuǎn)化為數(shù)字矩陣
plt.figure("dog")
plt.imshow(img)
plt.axis('off')
plt.show()

調(diào)用numpy中的array()函數(shù)就可以將PIL對象轉(zhuǎn)換為數(shù)組對象。

查看圖片信息,可用如下的方法:

print img.shape 
print img.dtype 
print img.size 
print type(img)

如果是RGB圖片,那么轉(zhuǎn)換為array之后,就變成了一個rows*cols*channels的三維矩陣,因此,我們可以使用img[i,j,k]來訪問像素值。

例1:打開圖片,并隨機添加一些椒鹽噪聲

from PIL import Image
import numpy as np
import matplotlib.pyplot as plt
img=np.array(Image.open('d:/ex.jpg'))

#隨機生成5000個椒鹽
rows,cols,dims=img.shape
for i in range(5000):
  x=np.random.randint(0,rows)
  y=np.random.randint(0,cols)
  img[x,y,:]=255
  
plt.figure("beauty")
plt.imshow(img)
plt.axis('off')
plt.show()

例2:將lena圖像二值化,像素值大于128的變?yōu)?,否則變?yōu)?

from PIL import Image
import numpy as np
import matplotlib.pyplot as plt
img=np.array(Image.open('d:/pic/lena.jpg').convert('L'))

rows,cols=img.shape
for i in range(rows):
  for j in range(cols):
    if (img[i,j]<=128):
      img[i,j]=0
    else:
      img[i,j]=1
      
plt.figure("lena")
plt.imshow(img,cmap='gray')
plt.axis('off')
plt.show()

如果要對多個像素點進行操作,可以使用數(shù)組切片方式訪問。切片方式返回的是以指定間隔下標訪問 該數(shù)組的像素值。下面是有關(guān)灰度圖像的一些例子:

img[i,:] = im[j,:] # 將第 j 行的數(shù)值賦值給第 i 行
img[:,i] = 100 # 將第 i 列的所有數(shù)值設(shè)為 100
img[:100,:50].sum() # 計算前 100 行、前 50 列所有數(shù)值的和
img[50:100,50:100] # 50~100 行,50~100 列(不包括第 100 行和第 100 列)
img[i].mean() # 第 i 行所有數(shù)值的平均值
img[:,-1] # 最后一列
img[-2,:] (or im[-2]) # 倒數(shù)第二行

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

相關(guān)文章

  • Python利用ElementTree模塊處理XML的方法詳解

    Python利用ElementTree模塊處理XML的方法詳解

    ElementTree是python的XML處理模塊,它提供了一個輕量級的對象模,下面這篇文章就來給大家介紹了關(guān)于Python利用ElementTree模塊處理XML的方法,文中通過示例代碼介紹的非常詳細,對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。
    2017-08-08
  • 如何使用?profile?進行python代碼性能分析

    如何使用?profile?進行python代碼性能分析

    對代碼優(yōu)化的前提是需要了解性能瓶頸在什么地方,程序運行的主要時間是消耗在哪里,對于比較復(fù)雜的代碼可以借助一些工具來定位,python?內(nèi)置了豐富的性能分析工具,本文介紹如何使用profile進行python代碼性能分析,感興趣的朋友一起看看吧
    2024-12-12
  • django修改models重建數(shù)據(jù)庫的操作

    django修改models重建數(shù)據(jù)庫的操作

    這篇文章主要介紹了django修改models重建數(shù)據(jù)庫的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • 使用python生成目錄樹

    使用python生成目錄樹

    這篇文章主要為大家詳細介紹了使用python生成目錄樹、文件的程序,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • python借助ChatGPT讀取.env實現(xiàn)文件配置隔離保障私有數(shù)據(jù)安全

    python借助ChatGPT讀取.env實現(xiàn)文件配置隔離保障私有數(shù)據(jù)安全

    這篇文章主要為大家介紹了python讀取.env實現(xiàn)文件配置隔離保障私有數(shù)據(jù)安全,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-03-03
  • Django+Uwsgi+Nginx如何實現(xiàn)生產(chǎn)環(huán)境部署

    Django+Uwsgi+Nginx如何實現(xiàn)生產(chǎn)環(huán)境部署

    這篇文章主要介紹了Django+Uwsgi+Nginx如何實現(xiàn)生產(chǎn)環(huán)境部署,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-07-07
  • Python對列表排序的方法實例分析

    Python對列表排序的方法實例分析

    這篇文章主要介紹了Python對列表排序的方法,實例分析了Python列表排序函數(shù)的相關(guān)使用技巧,非常簡單實用,需要的朋友可以參考下
    2015-05-05
  • Python MySQL 日期時間格式化作為參數(shù)的操作

    Python MySQL 日期時間格式化作為參數(shù)的操作

    這篇文章主要介紹了Python MySQL 日期時間格式化作為參數(shù)的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • 利用Python自動生成PPT的示例詳解

    利用Python自動生成PPT的示例詳解

    在日常工作中,PPT制作是常見的工作。這篇文章主要為大家詳細介紹了如何利用Python自動生成PPT,文中的示例代碼講解詳細,感興趣的可以了解一下
    2022-07-07
  • Python 中 sorted 如何自定義比較邏輯

    Python 中 sorted 如何自定義比較邏輯

    這篇文章主要介紹了Python中sorted如何自定義比較邏輯,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下
    2021-02-02

最新評論

屏东市| 郑州市| 南城县| 大渡口区| 漯河市| 大姚县| 都昌县| 宣威市| 临湘市| 龙山县| 类乌齐县| 凤凰县| 巴东县| 澄城县| 洛隆县| 商都县| 和顺县| 辛集市| 安义县| 龙里县| 婺源县| 泰州市| 新宁县| 安新县| 库伦旗| 大厂| 恩施市| 仙居县| 岑溪市| 壤塘县| 湟中县| 台东县| 绵竹市| 许昌县| 根河市| 宁明县| 华容县| 行唐县| 新建县| 习水县| 报价|