数据集包含不同大小的图像。 预训练的权重以300x300的分辨率进行训练。 我正在训练对象小于15x15的宽面数据集。
Q1。我想以800x800分辨率进行训练,我是否需要手动调整所有图像的大小,否则这将由Tensorflow自动完成吗?
我正在使用以下命令进行训练:
python3 /opt/github/models/research/object_detection/legacy/train.py --logtostderr --train_dir=/opt/github/object_detection_retraining/wider_face_checkpoint/ --pipeline_config_path=/opt/github/object_detection_retraining/models/ssd_inception_v2_coco_2018_01_28/pipeline.config
Q2。我还尝试使用model_main.py对其进行训练,但经过1000次迭代后,每次迭代都在评估数据集。
我正在使用以下命令进行训练:
python3 /opt/github/models/research/object_detection/model_main.py --num_train_steps=200000 --logtostderr --model_dir=/opt/github/object_detection_retraining/wider_face_checkpoint/ --pipeline_config_path=/opt/github/object_detection_retraining/models/ssd_inception_v2_coco_2018_01_28/pipeline.config
Q3。另外,如果您可以建议我使用除移动网络和初始之外的任何用于实时人脸检测的模型,请提出建议。
谢谢。
答案 0 :(得分:0)
Q1。不,您不需要手动调整大小。请参阅this的详细答案。
Q2。通过1000次迭代,您的意思是正确的吗? (迭代算作数据集的完整周期。)通常,模型会在一定时间(例如, 10分钟。因此,每10分钟保存一次检查点,并根据评估集对模型进行评估。
Q3。具有移动网络的SSD型号是快速检测器之一,除此之外,您还可以尝试使用YOLO模型进行实时检测