how to train Multiple Object Detection task?
Hi, I want to know how to train a Multiple object detection task? And how to create this kind of lmdb date? May I know how to create multiple object lmdb dataset without digits? I think the script is in DIGITS but I don't know how to create a lmdb dataset, can you show me how? Thanks.
Hi,

I want to know how to train a Multiple object detection task? And how to create this kind of lmdb date?

May I know how to create multiple object lmdb dataset without digits? I think the script is in DIGITS but I don't know how to create a lmdb dataset, can you show me how?

Thanks.

#1
Posted 12/22/2017 11:28 AM   
Hi, Could you share why you don't want to train your model with DIGITs? Here are two tutorial for your reference: [B]1.[/b] [url]https://github.com/dusty-nv/jetson-inference#locating-object-coordinates-using-detectnet[/url] [B]2.[/B] [url]https://github.com/NVIDIA/DIGITS/tree/digits-5.0/examples/regression#alternative-method-manually-creating-lmdb-files[/url] Thanks.
Hi,

Could you share why you don't want to train your model with DIGITs?

Here are two tutorial for your reference:
1. https://github.com/dusty-nv/jetson-inference#locating-object-coordinates-using-detectnet
2. https://github.com/NVIDIA/DIGITS/tree/digits-5.0/examples/regression#alternative-method-manually-creating-lmdb-files

Thanks.

#2
Posted 12/25/2017 06:58 AM   
Hi I had already checked these two references before, but could not get what I wanted. For multi-object detection I could just change that "custom class" to create the database? It's because in our training environment there doesn't have a gui. So I have to create a database manually. And then use nvcaffe to train a model in that environment. So I really appreciate if you could tell me how to do it. Thanks.
Hi


I had already checked these two references before, but could not get what I wanted. For multi-object detection I could just change that "custom class" to create the database?

It's because in our training environment there doesn't have a gui. So I have to create a database manually. And then use nvcaffe to train a model in that environment. So I really appreciate if you could tell me how to do it.

Thanks.

#3
Posted 12/25/2017 07:49 AM   
Hi, Thanks for your feedback. Here are some suggestions: [b]1.[/b] Check this function for writing an LMDB database: [url]https://github.com/NVIDIA/DIGITS/blob/master/examples/text-classification/create_dataset.py#L31[/url] [b]2.[/b] DIGITs support multiple-objects use case. Please follow the labeling rule of KITTI format: [url]https://github.com/NVIDIA/DIGITS/blob/master/digits/extensions/data/objectDetection/README.md[/url] [code] Class name (string in label file) Class ID (number in database) dontcare 0 car 1 van 2 truck 3 bus 4 ...... [/code] Thanks.
Hi,

Thanks for your feedback. Here are some suggestions:

1. Check this function for writing an LMDB database:
https://github.com/NVIDIA/DIGITS/blob/master/examples/text-classification/create_dataset.py#L31

2. DIGITs support multiple-objects use case.
Please follow the labeling rule of KITTI format:
https://github.com/NVIDIA/DIGITS/blob/master/digits/extensions/data/objectDetection/README.md

Class name (string in label file) 	Class ID (number in database)
dontcare 0
car 1
van 2
truck 3
bus 4
......


Thanks.

#4
Posted 12/26/2017 07:30 AM   
Hi Really thanks for your reply. In KITTI format, each kind of class have a unique folder and there are train data and validation data in that unique folder. If I want to make a multi-object detection task, can I put all kinds of data in only one folder, but with train folder and validation folder in that one folder? Or do you have an example for me? Thanks.
Hi

Really thanks for your reply.

In KITTI format, each kind of class have a unique folder and there are train data and validation data in that unique folder. If I want to make a multi-object detection task, can I put all kinds of data in only one folder, but with train folder and validation folder in that one folder?

Or do you have an example for me?

Thanks.

#5
Posted 12/26/2017 08:02 AM   
Hi, Object type is described in the label file: For example: [code] [b]dog[/b] 0 0 0 528.63 315.22 569.09 354.18 0 0 0 0 0 0 0 [b]sheep[/b] 0 0 0 235.28 300.59 270.52 346.55 0 0 0 0 0 0 0 [/code] Thanks.
Hi,

Object type is described in the label file:

For example:
dog 0 0 0 528.63 315.22 569.09 354.18 0 0 0 0 0 0 0
sheep 0 0 0 235.28 300.59 270.52 346.55 0 0 0 0 0 0 0

Thanks.

#6
Posted 12/27/2017 05:47 AM   
Hi  Thanks for reply. So it have nothing to do with the folder. Ok, Thanks again.
Hi 

Thanks for reply.
So it have nothing to do with the folder.

Ok, Thanks again.

#7
Posted 12/27/2017 07:23 AM   
1
1

#8
Posted 12/28/2017 04:03 AM   
2
2

#9
Posted 12/28/2017 04:04 AM   
Hi From [url]https://github.com/NVIDIA/DIGITS/blob/master/examples/text-classification/create_dataset.py#L31[/url],[url]https://github.com/NVIDIA/DIGITS/tree/digits-5.0/examples/regression#alternative-method-manually-creating-lmdb-files[/url] I know how to create lmdb file for images. But I can't find any example for creating label lmdb file, especially for multi-object (multi-class) detection task. I think the difference between image dataset and label dataset is the data section in datum, but I can't find a right formate for label-datum. Can you provide an example for me? Thanks.
Hi

From https://github.com/NVIDIA/DIGITS/blob/master/examples/text-classification/create_dataset.py#L31,https://github.com/NVIDIA/DIGITS/tree/digits-5.0/examples/regression#alternative-method-manually-creating-lmdb-files I know how to create lmdb file for images. But I can't find any example for creating label lmdb file, especially for multi-object (multi-class) detection task.

I think the difference between image dataset and label dataset is the data section in datum, but I can't find a right formate for label-datum.

Can you provide an example for me?

Thanks.

#10
Posted 12/28/2017 04:06 AM   
Hi When creating image lmdb and label lmdb for multi-object detection task. Do I need to put the label in image lmdb file? or just need to create a label lmdb file and put all bbox and class number in it? And of course I need to know the label format. So can you provide such label format for nvcaffe to read? Thanks.
Hi

When creating image lmdb and label lmdb for multi-object detection task. Do I need to put the label in image lmdb file? or just need to create a label lmdb file and put all bbox and class number in it?

And of course I need to know the label format. So can you provide such label format for nvcaffe to read?

Thanks.

#11
Posted 12/28/2017 06:40 AM   
Hi, Sorry for the late reply. There is little difference between single-object detection and multi-object detection problem. For single object-detection, the label value is 0 or 1. For multiple object detection, the label value is 0, 1, ..., N. But the database preparation, training process, inference testing are shared. So if you have updated your label file to KITTI format, just run the default script. Thanks and Happy New Year : )
Hi,

Sorry for the late reply.
There is little difference between single-object detection and multi-object detection problem.

For single object-detection, the label value is 0 or 1.
For multiple object detection, the label value is 0, 1, ..., N.

But the database preparation, training process, inference testing are shared.
So if you have updated your label file to KITTI format, just run the default script.

Thanks and Happy New Year : )

#12
Posted 01/02/2018 07:09 AM   
Hi. Happy new year. Actually I only want to know the multiple object detection label formate in python. Because I want to write my own lmdb file for training. Can you share that with me ? Thanks
Hi.

Happy new year.

Actually I only want to know the multiple object detection label formate in python. Because I want to write my own lmdb file for training.

Can you share that with me ?

Thanks

#13
Posted 01/02/2018 07:37 AM   
Hi, There are two kinds of database writer in DIGITs: [b]1.[/b] Image writer: [url]https://github.com/NVIDIA/DIGITS/blob/master/digits/tools/create_db.py[/url] [b]2.[/b] Generic writer: [url]https://github.com/NVIDIA/DIGITS/blob/master/digits/tools/create_generic_db.py[/url] Please check the source to get more information about data format. Thanks.
Answer Accepted by Forum Admin
Hi,

There are two kinds of database writer in DIGITs:

1. Image writer:
https://github.com/NVIDIA/DIGITS/blob/master/digits/tools/create_db.py

2. Generic writer:
https://github.com/NVIDIA/DIGITS/blob/master/digits/tools/create_generic_db.py

Please check the source to get more information about data format.
Thanks.

#14
Posted 01/04/2018 10:07 AM   
Scroll To Top

Add Reply