2022年8月13日土曜日

AWS Rekognition (2) : 画像をS3に転送する

 前回S3上にアップした画像のラベル抽出ができました(https://smizunolab.blogspot.com/2022/08/aws-rekognition-1.html)。ただ、毎回S3に画像を直接アップロードするのは大変ですので、既に蓄えられている画像をS3にアップロードして、ラベル抽出をしやすくしたいと思います。環境はSagemakerでやりますが、boto3がインストールされていれば、自分の環境でも同様にできます。

(1) Sagemaker上に画像フォルダ「image」を用意します。

このimageの中にラベル抽出したいファイルを入れておきます。
(2) S3上に転送されたファイルを格納するフォルダ「image」を用意します。
自分のバケットの中にフォルダ「image」を作成します。
この「image」にファイルを転送します。

(3) pythonでS3にファイル転送
前回利用したjupyterファイルに追加していきます。今回はcredentialsファイルを使わない形式で書いていきます。
import boto3
s3_client = boto3.client(
's3',
aws_access_key_id='*************************',
aws_secret_access_key='******************',
aws_session_token='********************',
region_name='us-east-1'
)
print(s3_client)
view raw s3_upload hosted with ❤ by GitHub

Bucket = '**********************'
Filename = ['./image/20220310-A7402532_TP_V4.jpg', './image/susipaku1128PAR53395340_TP_V4.jpg', './image/takeshitadoriIMGL3946_TP_V4.jpg']
Key = ['image/20220310-A7402532_TP_V4.jpg', 'image/susipaku1128PAR53395340_TP_V4.jpg', 'image/takeshitadoriIMGL3946_TP_V4.jpg']
for i in range(len(Filename)):
s3_client.upload_file(Filename[i], Bucket, Key[i])
view raw s3_upload2 hosted with ❤ by GitHub

今回はファイル名をリスト化していますが、適宜変更して下さい。ファイルがアップロードされたかS3側で確認します。
ファイルが指定場所、指定したファイル名でアップロードされたことが確認できました。

0 件のコメント:

コメントを投稿