Spaces:
Sleeping
Sleeping
import os | |
from utils.image_captioner import ImageCaptioner | |
# テスト用のAPIキー(実際のテストでは有効なAPIキーが必要です) | |
API_KEY = "YOUR_API_KEY_HERE" # 実際のテストでは有効なAPIキーに置き換えてください | |
# テスト用ディレクトリの作成 | |
test_output_dir = os.path.join('static', 'test_captioning') | |
os.makedirs(test_output_dir, exist_ok=True) | |
# テスト画像のパス | |
test_img_dir = os.path.join('static', 'test_output', 'refined_animals') | |
if os.path.exists(test_img_dir): | |
print(f'テストディレクトリが見つかりました: {test_img_dir}') | |
# ディレクトリ内の画像を取得 | |
image_files = [f for f in os.listdir(test_img_dir) | |
if f.endswith(('.png', '.jpg', '.jpeg'))] | |
if image_files: | |
test_img = os.path.join(test_img_dir, image_files[0]) | |
print(f'テスト画像が見つかりました: {test_img}') | |
# ImageCaptionerのインスタンスを作成 | |
captioner = ImageCaptioner(api_key=API_KEY) | |
# APIキーが設定されているか確認 | |
if captioner.is_configured() and API_KEY != "YOUR_API_KEY_HERE": | |
# キャプション生成をテスト | |
caption = captioner.generate_caption(test_img) | |
print(f'生成されたキャプション: {caption}') | |
# ファイル名生成をテスト | |
new_filename, caption = captioner.generate_filename(test_img, "animal") | |
print(f'生成されたファイル名: {new_filename}') | |
print(f'キャプション: {caption}') | |
print('キャプション生成テスト完了') | |
else: | |
print('APIキーが設定されていないか、デフォルトのままです。実際のテストには有効なAPIキーが必要です。') | |
print('モジュールのロードテストのみ完了しました。') | |
else: | |
print('テスト画像が見つかりませんでした') | |
else: | |
print(f'テストディレクトリが見つかりませんでした: {test_img_dir}') | |
# サンプル画像ディレクトリを確認 | |
sample_dir = 'static' | |
if os.path.exists(sample_dir): | |
print(f'サンプルディレクトリが見つかりました: {sample_dir}') | |
# サンプル画像を探す | |
for root, dirs, files in os.walk(sample_dir): | |
image_files = [f for f in files if f.endswith(('.png', '.jpg', '.jpeg'))] | |
if image_files: | |
test_img = os.path.join(root, image_files[0]) | |
print(f'サンプル画像が見つかりました: {test_img}') | |
# ImageCaptionerのインスタンスを作成 | |
captioner = ImageCaptioner(api_key=API_KEY) | |
# APIキーが設定されているか確認 | |
if captioner.is_configured() and API_KEY != "YOUR_API_KEY_HERE": | |
# キャプション生成をテスト | |
caption = captioner.generate_caption(test_img) | |
print(f'生成されたキャプション: {caption}') | |
print('キャプション生成テスト完了') | |
else: | |
print('APIキーが設定されていないか、デフォルトのままです。実際のテストには有効なAPIキーが必要です。') | |
print('モジュールのロードテストのみ完了しました。') | |
break | |
else: | |
print('サンプル画像が見つかりませんでした') | |