openimages / dataset

The Open Images dataset
https://storage.googleapis.com/openimages/web/index.html
Apache License 2.0
4.25k stars 605 forks source link

Can i download the images as per the categories? #61

Open hardikchauhan8 opened 6 years ago

hardikchauhan8 commented 6 years ago

I want dataset of images with Cars, Traffic signals, and pedestrian signals, Is there any options to download images dataset of only this class?

Nachwa commented 6 years ago

I did a small script using the bbox_hierarchy.json file from dendrogram You can download the file from here

import json
class_hierarchy_path = './data/classes/bbox_hierarchy.json'
with open(class_hierarchy_path, 'r') as file:
    class_hierarchy = json.load(file)

def find_children(json_input, keyword):

    if isinstance(json_input, dict):
        for k, v in json_input.items():
            if  k =='name' and v == keyword:
                print('search in children of', v)
                keywords.update([keyword])
                if 'children' in json_input:
                    find_children(json_input['children'], keyword=next(studied_class))
            elif k =='name' and keyword == '*':
                    keywords.update([v])                    
                    if 'children' in json_input:
                        find_children(json_input['children'], keyword=keyword)  

    elif isinstance(json_input, list):
        for json_item in  json_input:
            find_children(json_item, keyword)

Then you can write some paths from the dendrogram. Examples:

categories = ['Entity.Vehicle.Land vehicle.Car.*',
              'Entity.Outdoor.Street items.*'
             ]

keywords = set()
for category in categories:
    studied_class = iter(category.split('.'))
    #assert class_hierarchy['name'] == next(studied_class), 'the root class is "Entity"'
    find_children(class_hierarchy, next(studied_class))
print('Found keywords are : ', keywords)

Those keywords can be replaces with trainable_classes_path in code of deepdive5 which I used to download images.

MostafaEmam95 commented 6 years ago

Any Solution to download only needed classes ?

keldrom commented 6 years ago

https://github.com/EscVM/OIDv4_ToolKit

cyrineee commented 5 years ago

how can i use data augmentation on open images v4 for some classes ?

Jarmos-san commented 4 years ago

@cyrineee I guess you should search StackOverflow for the answer & replies to this thread shouldn't be derailed. Besides, I guess the thread should be closed as @keldrom's reply appears to work perfectly.