コード例 #1
0
    print('model file: {0}'.format(model_filepath), file=sys.stderr)
    print('', file=sys.stderr)

    # 学習済みのオートエンコーダをロード
    cnn = myDenoisingAE(WIDTH, HEIGHT, CHANNELS)
    cnn.load_state_dict(torch.load(model_filepath))

    # 入力画像のカラーモードを設定
    color_mode = 0 if CHANNELS == 1 else 1

    # 入力画像にごま塩ノイズを付加して読み込む
    img = load_single_image(in_filepath,
                            mode=color_mode,
                            with_noise=True,
                            n_noise_points=100)  # 100点分のごま塩ノイズを付加

    # 入力画像を表示
    show_image(img, title='input image', mode=color_mode)

    # 入力画像をモデルに入力してノイズ除去
    y = predict_once(device=dev, model=cnn, in_data=img)

    # ノイズ除去結果を表示
    show_image(y, title='output image', mode=color_mode)

    # ノイズ除去結果をファイルに保存
    y = np.asarray(y.transpose(1, 2, 0) * 255, dtype=np.uint8)
    cv2.imwrite(out_filepath, y)

    print('', file=sys.stderr)
コード例 #2
0
    # 画像のカラーモードを設定
    color_mode = 0 if CHANNELS == 1 else 1

    # 処理の実行
    if mode == 'compression':

        ### 圧縮モード ###

        # 入力画像を読み込む
        img = load_single_image(in_filepath, mode=color_mode)

        # 入力画像を表示
        show_image(img, title='input image', mode=color_mode)

        # 入力画像をモデルに入力して圧縮
        y = predict_once(device=dev, model=cnn, in_data=img, module='encode')

        # 圧縮結果をファイルに保存
        with open(out_filepath, 'w') as f:
            for i in range(len(y)):
                print(y[i], file=f)

    else:

        ### 復元モード ###

        # 特徴ベクトルファイルを読み込む
        with open(in_filepath, 'r') as f:
            reader = csv.reader(f)
            vec = []
            for row in reader: