python圖片大小
『壹』 python圖像處理
創建一個簡單的圖像與圖像混合
1.1 在Image模塊中,提供了創建圖像的方法。主要是通過**Image.new(mode, size, color)**實現,該方法傳入三個參數:
mode:圖像的創建模式
size:圖像的大小
color:圖像的顏色
用該方法可以創建一個簡單的圖像,之後我們可以通過save方法將圖像保存:
1.2生成圖片如下
1.3 圖像混合
透明度混合
透明度混合主要是使用**Image中的blend(im1, im2, alpha)**方法,對該方法的解釋如下:
im1:Image對象,在混合的過程中,透明度設置為(1-apha)
im2:Image對象,在混合的過程中,透明度設置為(apha)
alpha:透明度,取值是0-1。當透明度為0是,顯示im1對象;當透明度為1時,顯示im2對象
代碼實現如下
1.4原圖和混合圖的對比
1.5 遮罩混合
通過Image.composite(im1, im2, mask)方法實現遮罩混合。三個參數都是Image對象,該方法的作用就是使用mask來混合im1和im2。
1.6im1、im2和遮罩混合效果對比如下
『貳』 python opencv中imshow輸出圖像太大,如何調整輸出尺寸
通過resize重置圖片尺寸
參數:圖片,輸出圖片尺寸(一般我不用這個,我傳None),寬的比例,高的比例
例子:將圖片img,縮小一半顯示,那麼寬高為原尺寸的0.5倍
img = cv2.resize(img,None,fx=0.5,fy=0.5)
設置完尺寸後再顯示
cv2.imshow('img',img)
cv2.waitKey(0)
.......
希望我的回答對你有幫助!
『叄』 python PIL如何才能把圖片修改成正方形或者任意尺寸而不產生擠壓
改變圖像尺寸有兩類方法:
一是縮放(resize),即重采樣。這時,如果圖像縱橫比發生變化就會導致「擠壓」。
二是裁剪(crop)。當然圖只能越裁越小;不過可以配合縮放,先放大再裁剪。
既然題主要求不能「擠壓」,那就只能裁剪了。函數名我給出來了,具體用法題主自己研究。
『肆』 python 創建固定大小的圖片
不知道你對圖片的格式有沒有要求,如果是bmp的話是沒有壓縮的。也就是說大小和顏色深度決定了圖片的大小。這樣也比較容易控制。當然也就不能不改size隨便調節文件的大小。
如果是jpg的話,可以通過改變圖片的質量來調節文件的大小。
比如
im = Image.open("aa.JPG")
print im.format, im.size, im.mode
print im.size[0]
im.resize((720,540), Image.ANTIALIAS).save('a.jpg', quality = 95)
你也可以做一個循環,對生成的文件大小與目標大小做比較,直到滿足條件為止。
只是給個思路,也許幫不上忙。