← 开源
satojkovic

DeepLogo

A brand logo detection system using tensorflow object detection API.

ApplicationsObject detectionPython
在 GitHub 打开
增长势头
+024 小时新增 Star0.0%
528
Star
154
Fork
+0
本周
2
贡献者
创建于 2015-05-24 · 更新于 2026-09-02 · 今日第 17687 名
主要开发者
satojkovicbruce-willis

satojkovic/DeepLogo 排名第 17,687,有 528 个星标。

同类别比较

satojkovic/DeepLogo 排名第 17,687,此处有 8 个同类条目;philipperemy/deep-learning-bitcoin 排名第 17,686。

同类别比较
名称排名指标
waldo-vision/optical.flow.demo17,668
语言:
Python
星标数:
529
分叉数:
24
简介:
A project that uses optical flow and machine learning to detect aimhacking in video clips.
AlexandreSajus/JARVIS17,670
语言:
Python
星标数:
528
分叉数:
100
简介:
Your own personal voice assistant: Voice to Text to LLM to Speech, displayed in a web interface
JunweiLiang/Object_Detection_Tracking17,675
语言:
Python
星标数:
528
分叉数:
133
简介:
Out-of-the-box code and models for CMU's object detection and tracking system for multi-camera surveillance videos. Speed optimized Faster-RCNN model. Tensorflow based. Also supports EfficientDet. WACVW'20
philipperemy/deep-learning-bitcoin17,686
语言:
Python
星标数:
528
分叉数:
129
简介:
Exploiting Bitcoin prices patterns with Deep Learning.
ykhli/AI-tamago17,690
语言:
TypeScript
星标数:
528
分叉数:
84
简介:
A local-ready LLM-generated and LLM-driven virtual pet with thoughts and feelings. 100% Javascript.
PiSugar/whisplay-ai-chatbot17,694
语言:
TypeScript
星标数:
527
分叉数:
129
简介:
Pocket-sized AI chatbot built using a RPI Zero 2w / 5
whoami-wiki/whoami17,711
语言:
TypeScript
星标数:
527
分叉数:
28
简介:
your personal encyclopedia, written by agents
TaiT-tt/tait-crt-interface-skill17,717
语言:
Python
星标数:
526
分叉数:
25
简介:
TaiT-CRT-Interface-Skill is a Codex image generation skill that transforms user-uploaded portraits, photographs, or text descriptions into a retro illustration with the feel of an early CRT computer interface.
关键参数与规格
关键参数与规格
参数值
语言Python
类别Applications
子类别Object detection
关键词Computer vision, Object detection
星标数528
分叉数154
贡献者2
创建日期2015-05-24
更新日期2026-09-02
1 天星标数0
7 天星标数0
排名17,687
上次排名17,468
排名变化-219
7 天星标排名16,239
上次 7 天星标排名16,248
7 天星标排名变化9
总星标排名18,566
上次总星标排名18,544
总星标排名变化-22
国家Japan
README 摘录

[Update] DeepLogo2 with DETR is available DeepLogo A brand logo detection system using Tensorflow Object Detection API. Description Tensorflow Object Detection API is the easy to use framework for creating a custom deep learning model that solves object detection problems. If you already have your own dataset, you can simply create a custom model with sufficient accuracy using a collection of detection models pre-trained on COCO, KITTI, and OpenImages dataset. DeepLogo provides training and evaluation environments of Tensorflow Object

Detection API for creating a brand logo detection model. Detection Results These are some detection results by DeepLogo. In order to use that pre-trained model, setting up the tensorflow/models repository first. Clone the tensorflow/models repository and download the pre-trained model from model zoo. Tensorflow Object Detection API depends on many other libraries. For detailed steps to setup, please follow the official installation instruction. Download the flickr logos 27 dataset from here. The flickr logos 27 dataset

contains 27 classes of brand logo images downloaded from Flickr. The brands included in the dataset are: Adidas, Apple, BMW, Citroen, Coca Cola, DHL, Fedex, Ferrari, Ford, Google, Heineken, HP, McDonalds, Mini, Nbc, Nike, Pepsi, Porsche, Puma, Red Bull, Sprite, Starbucks, Intel, Texaco, Unisef, Vodafone and Yahoo. Preprocess The flickr logos 27 dataset contains an annotation file for training. This file includes not valid annotations such as an empty size bounding box. Therefore these annotations are removed in this preprocess

step, then class names are converted into class numbers and generate two preprocessed files. These two files are used to generate tfrecord files. The Tensorflow Object Detection API expects data to be in the TFRecord format. Run the following command to convert from preprocessed files into TFRecords. Training The Tensorflow Object Detection API has a python script for training called train. (see below) DeepLogo assumes that the current directory is under the DeepLogo directory and also the path of pre

-trained SSD and tfrecord is the relative path from DeepLogo (these paths are written in ssd_inception_v2. Therefore create a symbolic link to the directory of tensorflow/models/research/object_detection/ssd_inception_v2_coco_2018_01_28 first, then run the training script. Note: DeepLogo doesn't work in Tensorflow 2. When you try to train DeepLogo, checkout of tensorflow/models. Exporting a trained model for inference For testing a model, you should export it to a Tensorflow graph

proto first. Alternatively, you can download a trained model from GoogleDrive! The results of logo detection are saved in . Evaluation Before evaluating the trained model saved in training directory, edit the field in training/pipeline. The field represents the number of test images which is equal to number of lines present in a flickr_logos_27_dataset_test_set_annotation_cropped. Then start evaluation process by using eval. py provided within tensorflow/models repository. After a while you will get

evaluation results. If you want to check the results visually, open tensorboard in your browser.

常见问题

记录了多少星标和分叉?

satojkovic/DeepLogo 有 528 个星标和 154 个分叉。

仓库排名是多少?

satojkovic/DeepLogo 排名第 17,687。

记录的语言和类别是什么?

satojkovic/DeepLogo 有 528 个星标,语言为 Python,类别为 Applications。

哪个仓库排名最接近?

satojkovic/DeepLogo 与 philipperemy/deep-learning-bitcoin 比较,后者排名第 17,686,有 528 个星标。

README

[Update]

DeepLogo2 with DETR is available

DeepLogo

A brand logo detection system using Tensorflow Object Detection API.

Description

Tensorflow Object Detection API is the easy to use framework for creating a custom deep learning model that solves object detection problems.

If you already have your own dataset, you can simply create a custom model with sufficient accuracy using a collection of detection models pre-trained on COCO, KITTI, and OpenImages dataset.

DeepLogo provides training and evaluation environments of Tensorflow Object Detection API for creating a brand logo detection model.

Detection Results

These are some detection results by DeepLogo.

Training DeepLogo

DeepLogo uses SSD as a backbone network and fine-tunes pre-trained SSD released in the tensorflow/models repository.

In order to use that pre-trained model, setting up the tensorflow/models repository first.

  1. Clone the tensorflow/models repository and download the pre-trained model from model zoo.

    $ git clone https://github.com/tensorflow/models.git
    $ cd models/research/object_detection
    $ wget http://download.tensorflow.org/models/object_detection/ssd_inception_v2_coco_2018_01_28.tar.gz
    $ tar zxvf ssd_inception_v2_coco_2018_01_28.tar.gz
    

    Tensorflow Object Detection API depends on many other libraries. For detailed steps to setup, please follow the official installation instruction.

  2. Clone the DeepLogo repository.

    $ git clone https://github.com/satojkovic/DeepLogo.git
    
  3. Download the flickr logos 27 dataset from here.

    The flickr logos 27 dataset contains 27 classes of brand logo images downloaded from Flickr. The brands included in the dataset are: Adidas, Apple, BMW, Citroen, Coca Cola, DHL, Fedex, Ferrari, Ford, Google, Heineken, HP, McDonalds, Mini, Nbc, Nike, Pepsi, Porsche, Puma, Red Bull, Sprite, Starbucks, Intel, Texaco, Unisef, Vodafone and Yahoo.

    $ cd DeepLogo
    $ wget http://image.ntua.gr/iva/datasets/flickr_logos/flickr_logos_27_dataset.tar.gz
    $ tar zxvf flickr_logos_27_dataset.tar.gz
    $ cd flickr_logos_27_dataset
    $ tar zxvf flickr_logos_27_dataset_images.tar.gz
    $ cd ../
    
  4. Preprocess

    The flickr logos 27 dataset contains an annotation file for training. This file includes not valid annotations such as an empty size bounding box. Therefore these annotations are removed in this preprocess step, then class names are converted into class numbers and generate two preprocessed files. These two files are used to generate tfrecord files.

    $ cd DeepLogo
    $ python preproc_annot.py
    
  5. Generate tfrecord files.

    The Tensorflow Object Detection API expects data to be in the TFRecord format. Run the following command to convert from preprocessed files into TFRecords.

    $ python gen_tfrecord.py --train_or_test train --csv_input flickr_logos_27_dataset/flickr_logos_27_dataset_training_set_annotation_cropped.txt --img_dir flickr_logos_27_dataset/flickr_logos_27_dataset_images --output_path train.tfrecord
    $ python gen_tfrecord.py --train_or_test test --csv_input flickr_logos_27_dataset/flickr_logos_27_dataset_test_set_annotation_cropped.txt --img_dir flickr_logos_27_dataset/flickr_logos_27_dataset_images --output_path test.tfrecord
    
  6. Training

    The Tensorflow Object Detection API has a python script for training called train.py. This script needs two arguments --pipeline_config_path and --train_dir. (see below)

    DeepLogo assumes that the current directory is under the DeepLogo directory and also the path of pre-trained SSD and tfrecord is the relative path from DeepLogo (these paths are written in ssd_inception_v2.config). Therefore create a symbolic link to the directory of tensorflow/models/research/object_detection/ssd_inception_v2_coco_2018_01_28 first, then run the training script.

    $ OBJECT_DETECTION_API_DIR={path to tensorflow/models/research/object_detection}
    $ ln -s ${OBJECT_DETECTION_API_DIR}/ssd_inception_v2_coco_2018_01_28 ssd_inception_v2_coco_2018_01_28
    $ python ${OBJECT_DETECTION_API_DIR}/legacy/train.py --logtostderr --pipeline_config_path=ssd_inception_v2_coco.config --train_dir=training
    

    Note: DeepLogo doesn't work in Tensorflow 2.0. When you try to train DeepLogo, checkout 5ba3c3f5 of tensorflow/models.

Testing

  1. Exporting a trained model for inference

    For testing a model, you should export it to a Tensorflow graph proto first.

    $ STEPS={the number of steps when the model is saved}
    $ python ${OBJECT_DETECTION_API_DIR}/export_inference_graph.py --input_type=image_tensor --pipeline_config_path=ssd_inception_v2_coco.config --trained_checkpoint_prefix=model.ckpt-${STEPS} --output_directory=logos_inference_graph
    

    Alternatively, you can download a trained model from GoogleDrive!

  2. Inference

    Run the following command. The results of logo detection are saved in --output_dir.

    $ python logo_detection.py --model_name logos_inference_graph/ --label_map flickr_logos_27_label_map.pbtxt --test_annot_text flickr_logos_27_dataset/flickr_logos_27_dataset_test_set_annotation_cropped.txt --test_image_dir flickr_logos_27_dataset/flickr_logos_27_dataset_images --output_dir detect_results
    

Evaluation

Before evaluating the trained model saved in training directory, edit the num_examples field in training/pipeline.config file.

The num_examples field represents the number of test images which is equal to number of lines present in a flickr_logos_27_dataset_test_set_annotation_cropped.txt file.

$ wc -l flickr_logos_27_dataset/flickr_logos_27_dataset_test_set_annotation_cropped.txt
     438 flickr_logos_27_dataset/flickr_logos_27_dataset_test_set_annotation_cropped.txt
eval_config: {
  num_examples: 438
  # Note: The below line limits the evaluation process to 10 evaluations.
  # Remove the below line to evaluate indefinitely.
  max_evals: 10
}

Then start evaluation process by using eval.py provided within tensorflow/models repository.

$ python ${OBJECT_DETECTION_API_DIR}/legacy/eval.py --logtostderr --checkpoint_dir=training --eval_dir=eval --pipeline_config_path=training/pipeline.config

After a while you will get evaluation results. If you want to check the results visually, open tensorboard in your browser.

$ tensorboard --logdir=eval/

License

MIT

排名相邻
同类项目