karaage0703 / karaage-ai-book

MIT License
104 stars 14 forks source link

データの前処理(データ水増し)部分の配列エラーについて #45

Closed MoriKenta0502 closed 1 month ago

MoriKenta0502 commented 4 months ago

ページ数

テキストには該当ページなし(強いて言うならp200)

内容

  ルックアップテーブルの生成
  min_table = 50
  max_table = 205
  diff_table = max_table - min_table
  gamma1 = 0.75
  gamma2 = 1.5
  LUT_HC = np.arange(256, dtype = 'uint8')
  LUT_LC = np.arange(256, dtype = 'uint8')
  LUT_G1 = np.arange(256, dtype = 'uint8')
  LUT_G2 = np.arange(256, dtype = 'uint8')
  LUTs = []

  平滑化用
  average_square = (10,10)

  ハイコントラストLUT作成
  for i in range(0, min_table):
    LUT_HC[i] = 0

  for i in range(min_table, max_table):
    LUT_HC[i] = 255 * (i - min_table) / diff_table

  for i in range(max_table, 255):
    LUT_HC[i] = 255

  その他LUT作成
  for i in range(256):
    LUT_LC[i] = min_table + i * (diff_table) / 255
    LUT_G1[i] = 255 * pow(float(i) / 255, 1.0 / gamma1)
    LUT_G2[i] = 255 * pow(float(i) / 255, 1.0 / gamma2)

  LUTs.append(LUT_HC)
  LUTs.append(LUT_LC)
  LUTs.append(LUT_G1)
  LUTs.append(LUT_G2)

  for image_file in image_file_names:
   print(image_file)
     画像の読み込み
    img_src = cv2.imread(image_file, 1)
    trans_img = []
    trans_img.append(img_src)

  LUT変換
    for i, LUT in enumerate(LUTs):
      trans_img.append(cv2.LUT(img_src, LUT))
  平滑化
    trans_img.append(cv2.blur(img_src, average_square))
  ヒストグラム均一化
    trans_img.append(equalizeHistRGB(img_src))
  ノイズ付加
    trans_img.append(addGaussianNoise(img_src))
    trans_img.append(addSaltPepperNoise(img_src))
  反転
    flip_img = []
    for img in trans_img:
       flip_img.append(cv2.flip(img, 1))
    trans_img.extend(flip_img)
    dir_name = os.path.splitext(os.path.dirname(image_file))[0]
    base_name = os.path.splitext(os.path.basename(image_file))[0]
    img_src.astype(np.float64)  
    for i, img in enumerate(trans_img):
      if i > 0:
        cv2.imwrite(dir_name + '/trans_' + base_name + '_' + str(i-1) + '.jpg' ,img)

上記のコードを実行時、   IndexError: index 302 is out of bounds for axis 0 with size 240 というエラーが出力される。

コメント rowに、colに入るべき値が代入されているのかと推測する。

karaage0703 commented 1 month ago

@MoriKenta0502 回答遅くなりすみません。実行してみたのですが、特にエラーは発生しませんでした。

わかりました trans_img.append(addSaltPepperNoise(img_src))を削除ください。

ノートブックもアップデートしました。

https://github.com/karaage0703/karaage-ai-book/blob/master/ch02/02_karaage_ai_book_image_classification_performance.ipynb

karaage0703 commented 1 month ago

修正確認できたのでcloseします。 もしまた何かありましたら再度オープンしてください。