讀取圖片並轉爲numpy數組

from PIL import Image
content_img_path = './style_transfer_data/sun1.jpg'
style_img_path = './style_transfer_data/xingkong.jpeg'

content_val = read_img(content_img_path)
style_val = read_img(style_img_path)


def read_img(img_name):
    img = Image.open(img_name)
    #將讀取的圖像變爲numpy矩陣
    np_img = np.array(img) # (224, 224, 3)
    """
    將3維變爲4維矩陣,可以用reshape去做變換,
    因爲只有一張圖片,可以加一個數組,然後讓它封裝在一個列表中,
    它就會把列表的這一維也加上去,列表的這一維就是1.
    """
    np_img = np.asarray([np_img], dtype=np.int32) # (1, 224, 224, 3)
    return np_img

注意讀取出的圖片長寬順序調換了

PIL讀出來的圖片size應該是(width,height),但是轉成numpy矩陣後,變成了(height, width, channels)

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