深い学習——プール化

3778 ワード

  《    ——     》      

ボリュームニューラルネットワークプール化ステップの実現は,以前に処理したシボランコマイロ画像2を最大プール化する.
本にconvert(‘RGB’)が付いていないため、誤報を招いた.
他人のブログを見て、「
デジタル画像処理では、異なる画像フォーマットに対してその特定の処理アルゴリズムがある.したがって,画像処理を行う前に,自分がどのフォーマットの画像に基づいてアルゴリズム設計とその実現を行うかを考慮する必要がある.本論文では,この要件に基づいてpythonにおける画像処理ライブラリPILを用いて異なる画像フォーマットの変換を実現する.
カラー画像については、その画像フォーマットがPNGであってもBMPであってもJPGであっても、PILにおいてImageモジュールのopen()関数を用いて開いた後に返される画像オブジェクトのモードは「RGB」である.一方、階調画像については、その画像フォーマットがPNGであってもBMPであってもJPGであっても、オンにすると「L」となる.
以前のブログでImageモジュールについて紹介したように、PNG、BMP、JPGのカラー画像フォーマット間の相互変換は、Imageモジュールのopen()とsave()関数で行うことができます.具体的には、これらの画像を開くと、PILはそれらを3チャネルの「RGB」画像に復号する.ユーザは、この「RGB」画像に基づいて処理することができる.処理が完了し、関数save()を使用して、処理結果をPNG、BMP、JPGの任意のフォーマットに保存できます.これにより、いくつかのフォーマット間の変換が完了します.同様に、他のフォーマットのカラー画像もこのようにして変換を完了することができる.もちろん、異なるフォーマットの階調画像についても同様の方法で完了することができるが、PIL復号後はモードが「L」の画像である.

プール化デジタルバーは、ピクチャの基本情報を保持する場合にピクチャサイズを小さくしたり、次元を下げたりすることにより、サブサンプリングまたはダウンサンプリングとも呼ばれる.ウィンドウを通る


#-*- coding:utf-8 -*-
from PIL import Image
import numpy as np
import os

im_conv = Image.open('K:/python/py2/carConv1.jpg')
im_conv = np.array(im_conv)

def pooling (im_array):
    height, width = im_array.shape
    pool = [[0 for col in range(width//10)] for row in range(height//10)]
    p,q = [0,0]
    for i in range(0, height-10, 10):
        q = 0
        for j in range(0, width - 10, 10):
            pool[p][q] = im_array[(i):(i+10),(j):(j+10)].max()
            q = q + 1
        p = p + 1
    return pool

im_pool = pooling(im_conv)
im_pool = np.array(im_pool)
new_im = Image.fromarray(im_pool)
new_im = new_im.convert('RGB')
new_im.save("carPool.jpg")