我在使用TinyYolo与deeplearning4j,阅读了这个教程 http://emaraic.com/blog/yolo-custom-object-detector,但我不确定是否需要更多的配置来处理720p的图像,因为这个例子中的图像是416×416的。这是否是一个硬性要求?我在理解一些配置方面遇到了困难,如下所示:
private static final int CHANNELS = 3;private static final int GRID_WIDTH = 13;private static final int GRID_HEIGHT = 13;private static final int CLASSES_NUMBER = 1;private static final int BOXES_NUMBER = 5;private static final double[][] PRIOR_BOXES = {{1.5, 1.5}, {2, 2}, {3,3}, {3.5, 8}, {4, 9}};//anchors boxesprivate static final int BATCH_SIZE = 4;private static final int EPOCHS = 50;private static final double LEARNIGN_RATE = 0.0001;private static final int SEED = 1234;private static final double LAMDBA_COORD = 1.0;private static final double LAMDBA_NO_OBJECT = 0.5;
之前我使用darkflow处理我的标签和图像,取得了不错的效果。我想使用deeplearning4j,以便更好地与我的Java项目集成。在导入我之前创建并在Python代码中仍能成功运行的模型时,我遇到了困难,导出似乎有些细微的差别。
如果有人能提供一些指导,我相信应该有方法处理720p的图像。我认为可能需要调整大小。我知道darknet和darkflow会自动执行此操作。如果我确实进行了调整大小操作,那么我的标签注释XML文件是否需要更改?
感谢任何帮助。
回答:
您需要将720p的输入调整到TinyYolo期望的输入尺寸416×416
resize(rgbaMat, resizedImage, new Size(tinyyolowidth, tinyyoloheight));