Tra*_*isJ 5 image-processing python-2.7 docker mxnet
我尝试按照此处的示例创建自己的数据集以使用 MXnet 进行训练。我的数据按照示例中指定的方式组织:
/data
yes/
file1.png
file2.png
...
no/
file1.png
file2.png
...
Run Code Online (Sandbox Code Playgroud)
本教程表示第一步是运行im2rec.py以创建 .lst 文件,然后im2rec.py再次运行(不同选项)以创建 .rec 文件。要创建 .lst 文件,我键入:
> python tools/im2rec.py my_data /data --list True --recursive True --train-ratio .75 --exts .png
Run Code Online (Sandbox Code Playgroud)
执行此操作后,将创建两个文件(如预期),my_data_train.lst并且my_data_val.lst. 两个文件中的总行数与 myyes/和no/目录中的文件数之和相同。然后,我尝试使用im2rec以下命令第二次运行来创建.rec文件:
> python tools/im2rec.py my_data /data --resize 227 --num-thread 16
Run Code Online (Sandbox Code Playgroud)
它运行了几秒钟,然后(无声地)崩溃。在此过程中,它创建 4 个空文件:my_data_train.idx、my_data_train.rec、my_data_val.idx和my_data_val.rec。
问题:我需要做哪些不同的事情才能创建.rec包含我自己的 .png 图像的正确文件?
额外细节:
我正在 docker hub 上的 dmlc 提供的 docker 容器(mxnet/python:gpu)内工作;他们还在他们的 github 页面上提供了示例。数据可通过容器中的共享目录获得。所以这很可能是 docker 的问题。让我有点担心这是一个 docker 问题的是,我必须这样做pip install opencv-python才能im2rec导入 cv2...我希望提供容器的人能够解决这个问题。
你是对的,图像缺少 python 的 opencv 。请不要通过 pip 安装,而是通过apt-get install python-opencv.
PR 发布在这里:Using im2rec in MXnet to create dataset with png images