2017-03-23 29 views
1

我想在许多图像上运行Darknet(YOLO)并将其预测存储在PostgreSQL数据库中。如何在数据库的jsonb字段中保存YOLO的预测(只能看一次)对象检测

这是我表的结构:

sample=> \d+ prediction2; 
         Table "public.prediction2" 
    Column | Type | Modifiers | Storage | Stats target | Description 
-------------+-------+-----------+----------+--------------+------------- 
path  | text | not null | extended |    | 
pred_result | jsonb |   | extended |    | 
Indexes: 
    "prediction2_pkey" PRIMARY KEY, btree (path) 

暗网(永乐)的源文件都写在C.

我已经存储了来自Caffe的预言在数据库中,如下所示。我列举了我的数据库中的一行作为例子。

path           | pred_result                                   
-------------------------------------------------+------------------------------------------------------------------------------------------------------------------ 
/home/reena-mary/Pictures/predict/gTe5gy6xc.jpg | {"bow tie": 0.00631, "lab coat": 0.59257, "neck brace": 0.00428, "Windsor tie": 0.01155, "stethoscope": 0.36260} 

我想YOLO的预测增加pred_result即与已经存储在数据库中的每个图像路径,但Caffe预测结果的jsonb数据,我想追加暗网(YOLO的)预测。

我想这样做的原因是为每个图像添加搜索标签。因此,通过在图像上运行Caffe和Darknet,我希望能够获得足够的标签,以帮助我更好地进行图像搜索。

请帮助我如何在Darknet中做到这一点。

回答

1

这是我也遇到的问题。实际上,YOLO不提供JSON输出接口,因此无法获得与Caffe相同的输出。

但是,您可以合并以获得可行的输出:https://github.com/pjreddie/darknet/pull/34/files。它输出CSV数据,您可以将其转换为JSON以存储在数据库中。

你当然也可以改变YOLO的源代码,使你自己的实现直接输出JSON。

1

如果你能够使用YOLO的TensorFlow实现试试这个:https://github.com/thtrieu/darkflow

您可以直接从另一个Python应用程序darkflow互动,然后做与输出数据,请你(或得到JSON数据保存到一个文件,以较轻者为准)。

相关问题