这里需要将.csv格式转换为.txt文件,该文件具有与上述相同的格式。创建一个新的数据帧,按照格式将所有值填入该数据帧,然后将其另存为.txt文件。 data = pd.DataFrame() 下一步进行模型训练,使用train_frcnn.py文件来训练模型。 cd keras-frcnn 由于数据集较大,需要一段时间来训练模型。如果条件满足的话,可以使用GPU来加快训练过程。同样也可以尝试减少num_epochs参数来加快训练过程。 模型每训练好一次(有改进时),该特定时刻的权重将保存在与“model_frcnn.hdf5”相同的目录中。当对测试集进行预测时,将使用到这些权重。 根据机器的配置,可能需要花费大量时间来训练模型并获得权重。建议使用本文训练大约500个时期的权重作为初始化。可以从这里下载这些权重,并设置好相应的路径。 因此,当模型训练好并保存好权重后,下面进行预测。Keras_frcnn对新图像进行预测并将其保存在新文件夹中,这里只需在test_frcnn.py文件中进行两处更改即可保存图像:
使用下面的代码进行图像预测: python test_frcnn.py -p test_images 最后,检测到对象的图像将保存在“results_imgs”文件夹中。以下是本文实现faster R-CNN后预测几个样本获得的结果: 总结R-CNN算法确实是用于对象检测任务的变革者,改变了传统的做法,并开创了深度学习算法。近年来,计算机视觉应用的数量突然出现飙升,而R-CNN系列算法仍然是其中大多数应用的核心。 Keras_frcnn也被证明是一个很好的对象检测工具库,在本系列的下一篇文章中,将专注于更先进的技术,如YOLO,SSD等。 作者信息PULKIT SHARMA,机器学习和深度学习 本文由阿里云云栖社区组织翻译。 文章原标题《A Practical Implementation of the Faster R-CNN Algorithm for Object Detection (Part 2 – with Python codes)》,译者:海棠,审校:Uncle_LLD。 |