numpy pil 4行代碼修改圖片顏色 倒置 馬賽克

羣裏的人問怎麼改圖片顏色.

numpy + PIL 實現;

主要還是用了numpy中的切片, 和指定元素順序功能

比如:

kk =[[[1,2,3],[4,5,6]],[[10,9,8],[7,8,9]]]
d = np.array(kk)
print(d)
print("-" * 10)
print(d[:,:,[2,0,1]]) #[2,0,1] -> 把原來的0,1,2 換個位置

#echo:
[[[ 1  2  3]
  [ 4  5  6]]

 [[10  9  8]
  [ 7  8  9]]]
----------
[[[ 3  1  2]
  [ 6  4  5]]

 [[ 8 10  9]
  [ 9  7  8]]]

 

 

修改顏色  黑白照片:

img = Image.open("d:/code/js/a (1).jpg") #type:Image
d = np.array(img)
img2 = Image.fromarray(d[:,:,0])
img2.show()

 

倒置:

img = Image.open("d:/code/js/a (1).jpg") #type:Image
d = np.array(img)
img2 = Image.fromarray(d[::-1,::-1]) #把內部數組倒置 , 元素保持不變
img2.show()

 

馬賽克:

img = Image.open("d:/code/js/a (1).jpg") #type:Image
d = np.array(img)
img2 = Image.fromarray(d[::10,::10])#10個數組一取
img2.show()

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章