質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

2回答

797閲覧

k-means FileNotFoundError: [Errno 2] No such file or directoryの解決方法を教えて

seiya518

総合スコア1

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2020/07/31 19:52

FileNotFoundError: [Errno 2] No such file or directoryの解決の仕方がわからない

プログラミング初心者です。
https://avinton.com/academy/image-classification/
このサイトのコードをもとにk-meansを使った画像分類をしたいのですがどうしても最後にerrorが出てしまいます。
解決方法を教えてください。

発生している問題・エラーメッセージ

FileNotFoundError Traceback (most recent call last) <ipython-input-6-fbed7b538f36> in <module> 15 img = Image.open(img_paths[j]) 16 fname = img_paths[j].split('/')[-1] ---> 17 img.save("label"+str(i)+"/" + fname) 18 19 print("Image placing done.") ~\Anaconda3\envs\yolov3\lib\site-packages\PIL\Image.py in save(self, fp, format, **params) 2129 fp = builtins.open(filename, "r+b") 2130 else: -> 2131 fp = builtins.open(filename, "w+b") 2132 2133 try: FileNotFoundError: [Errno 2] No such file or directory: 'label0/images\img_00001.jpg'

該当のソースコード

# K-means clustering n_clusters = 4 kmeans = KMeans(n_clusters=n_clusters, random_state=5).fit(r_dataset) labels = kmeans.labels_ print("K-means clustering done.") for i in range(n_clusters): label = np.where(labels==i)[0] # Image placing if not os.path.exists("label"+str(i)): os.makedirs("label"+str(i)) for j in label: img = Image.open(img_paths[j]) fname = img_paths[j].split('/')[-1] img.save("label"+str(i)+"/" + fname) print("Image placing done.")

試したこと

ここに問題に対して試したことを記載してください。

補足情報(FW/ツールのバージョンなど)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ファイルあるいはディレクトリがない、といってます。
なので、
あなたが操作しようとしてるパスを確認して、それが実際にPCの中に存在してるか確認してみよう

投稿2020/07/31 21:36

y_waiwai

総合スコア88042

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

seiya518

2020/08/01 01:57

回答ありがとうございます。無事解決できました!
guest

0

ベストアンサー

label0というディレクトリがあり、その中にimagesと言うディレクトリを作っている状態にしていないために、エラーが出ているものと思います。
まずは存在するか確認し、存在しなければディレクトリを作ってください。

それでも、エラーが出る場合はパスの指定がまずいのだと思います。

投稿2020/07/31 20:34

Penpen7

総合スコア698

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

seiya518

2020/08/01 01:56

先に回答してくださったためにベストアンサーに選ばせていただきました。 無事解決できました!ありがとうございました!
seiya518

2020/08/01 03:13

もう一つお伺いしたいです、imagesではなくlabel0のディレクトリを指定する場合はどこを直せばいいのですか? 初歩的なことですみませんよろしければ返信お願いします。
Penpen7

2020/08/01 10:32 編集

label0というディレクトリにファイルを入れたいということでしたら、label0/img_00001.jpgとなると思います。
seiya518

2020/08/03 00:19

ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問