python讀取bmp
Ⅰ python怎麼用PIL模塊處理BMP圖像 二值化
用PIL載入BMP格式圖像之後 進行灰度處理 可是 返回值是
<PIL.Image.Image image mode=L size=1280x960 at 0x3034F98>
並不是像素點的值
因為我想對這個圖像進行 二值化處理
寫了 一段
image = Image.open('E:\\0.2.bmp').convert("L")
for i in image:
if i> 125:
i=255
else:
i=0
可是 並不成功 錯誤是 TypeError: 'Image' object is not iterable
遍歷圖片對象?可是怎麼個遍歷法呢?Pillow 提供了一個 .load() 方法,用來處理像素。圖片嘛,當然是二維的,有寬和高的。
pixels = image.load()
for x in ramge(image.width):
for y in range(image.height):
pixsels[x, y] = 255 if pixsels[x, y] > 125 else 0
當然了,只是最簡單的二值化的話,直接 image.convert('1') 就可以了 :-)
Ⅱ 如何在python中讀取bmp格式圖片文件
直接用open打開後read讀取
A=open('test.bmp','rb')
B=open('test2.bmp','w')
c=A.read()
B.write(c)
A.close()
B.close()
Ⅲ 如何用python讀取圖片的16進制碼
你可以直接用open('test.bmp','rb') open函數打開,這樣得到的是二進制數據,然後你根據圖片格式的相應說明對二進制數據進行相應的轉換即可,或者使用圖像處理庫來做也是很方便的,比如opencv等等。
Ⅳ 如何在python界面顯示圖片
wxpython:
# 使用wx.Image得到對象
bmp = wx.Image('bitmaps/image.bmp', wx.BITMAP_TYPE_BMP).ConvertToBitmap()
gif = wx.Image('bitmaps/image.gif', wx.BITMAP_TYPE_GIF).ConvertToBitmap()
png = wx.Image('bitmaps/image.png', wx.BITMAP_TYPE_PNG).ConvertToBitmap()
jpg = wx.Image('bitmaps/image.jpg', wx.BITMAP_TYPE_JPEG).ConvertToBitmap()
# 把它們顯示出來
pos = 10
wx.StaticBitmap(frame, -1, bmp, (10, pos), (bmp.GetWidth(), bmp.GetHeight()))
pos = pos + bmp.GetHeight() + 10
wx.StaticBitmap(frame, -1, gif, (10, pos), (gif.GetWidth(), gif.GetHeight()))
pos = pos + gif.GetHeight() + 10
wx.StaticBitmap(panel, -1, png, (10, pos), (png.GetWidth(), png.GetHeight()))
pos = pos + png.GetHeight() + 10
wx.StaticBitmap(frame, -1, jpg, (10, pos), (jpg.GetWidth(), jpg.GetHeight()))
具體的請根據你的實際情況修改,最好去http://www.wxpython.org/download.php#binaries
下載wxpython和wxpython demo看看,這個demo很強大的。
Ⅳ Python中的文件讀寫-理論知識
Python處理兩種不同類型的文件:二進制文件和文本文件。了解兩者之間的差異很重要,因為它們的處理方式不同。
二進制文件
在正常計算機使用期間使用的大多數文件實際上是二進制文件,而不是文本。比如:Microsoft Word .doc文件實際上是一個二進制文件,即使它只有文本。
二進制文件的其他示例包括:
圖像文件,包括.jpg,.png,.bmp,.gif,等。
文件,包括.doc,.xls,.pdf或者其他文件。
那是因為這些文件都有特殊處理的要求,需要特定類型的軟體來打開它。例如,您需要Excel來打開.xls文件,並使用資料庫程序來打開.sqlite文件。
文本文件
一方面,沒有特定的編碼,可以通過沒有任何特殊處理的標准文本編輯器打開。但是,每個文本文件都必須遵守一組規則:
文本文件必須是可讀的。他們可以(並且經常會)包含許多特殊編碼,尤其是在HTML或其他標記語言中,但您仍然可以說出它的含義
文本文件中的數據按行組織。在大多數情況下,每一行都是一個獨特的元素,無論是指令行還是命令。
此外,文本文件在每行的末尾都有一個看不見的字元,這使文本編輯器知道應該有一個新行。通過編程與這些文件交互時,您可以利用該字元。在Python中,它用「 n」 表示。
在哪裡可以找到Python的文件I / O工具
在Python中工作時,您不必擔心導入任何特定的外部庫來處理文件。Python附帶有「文件庫」,文件I / O工具和實用程序是核心語言的內置部分。
但是在其他語言(如C ++)中,要處理文件,您必須通過包含正確的頭文件來啟用文件I / O工具#include <fstream>。如果您使用java編寫代碼,則需要使用該import java.io.*語句。
使用Python,就沒有必要這樣做,這是因為Python有一組內置函數,可以處理讀取和寫入文件所需的所有內容。