50516


Python OpenCVを使っています。

[code]

    cat_count = 0
    for　(物体検出のループ):
        ・
        ・
        ・
        cat_count += label_name.count('Cat')
    print(cat_count)
    
    if cat_count == 1:
        cv2.imwrite('./Cat/', img)
    
[/code]

物体を検出するたびにループされ  
ラベルのついたバウンディングボックスが画像に現れる。  
出力結果は猫が検出された数です。

出力結果が1の時だけ、Catというフォルダに保存したいのですがうまくいきません。教えてください。

追記  
エラーは出ていませんが画像は保存されません。  
ssd_kerasのソースを元に作成しています。


CC BY-SA 4.0
2018-11-21T07:00:45.493
50500
2018-11-21T15:07:14.673
2018-11-21T08:13:11.847
question
python opencv
Python 画像保存先指定


提示されているソースだけで言えば、nekketsuuuさんのコメントの通り、ファイル名まで含めて指定すべきところをフォルダ名だけしか指定していないためでしょう。

Catフォルダは作った上で、以下のようにしてみてください。

[code]

    if cat_count == 1:
        cv2.imwrite("./Cat/SingleCat.jpg", img)
    
[/code]

参考：  
[OpenCV::imwrite](https://docs.opencv.org/3.0-beta/modules/imgcodecs/doc/reading_and_writing_images.html#imwrite)  
[Python+OpenCV: cv2.imwrite](https://stackoverflow.com/q/20425724/9014308)  
[cv2.imwrite で連番のファイル名で保存したい](https://teratail.com/questions/106811)


CC BY-SA 4.0
2018-11-21T15:07:14.673
50516
2018-11-21T15:07:14.673
26370
50500
answer