Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

MIVisionX toolkit is a comprehensive computer vision and machine intelligence libraries, utilities and applications bundled into a single toolkit.

License

NotificationsYou must be signed in to change notification settings

srohit0/trafficVision

Repository files navigation

This app detects cars/buses in a live traffic at a phenomenal50 frames/sec with HD resolution (1920x1080) using deep learning networkYolo-V2. The model used in the app is optimized for inferencing performnce on AMD-GPUs usingMIVisionX toolkit.

Traffic Vision Animation

Features

  1. Vehicle detection with bounding box
  2. Vehicle direction ((upward, downward) detection
  3. Vehicle speed estimation
  4. Vehicle type: bus/car.

How to Run

Use Model

Demo

App starts the demo, if no other option is provided. Demo uses a video stored in themedia/ dir.

% ./main.py('Loaded', 'yoloOpenVX')OK: loaded 22 kernels from libvx_nn.soOK: OpenVX using GPU device#0 (gfx900) [OpenCL 1.2 ] [SvmCaps 0 1]OK: annCreateInference: successfulProcessed a total of  102 framesOK: OpenCL buffer usage: 87771380, 46/46%

Here is thelink to YouTube video detecting cars, bounding boxes, car speed, and confidence scores.

Other Examples

recorded video

  1. ./main.py --video /vid.mp4

traffic cam ip

  1. ./main.py --cam_ip 'http://166.149.104.112:8082/snap.jpg'

Installation

Prerequisites

  1. GPU: Radeon Instinct or Vega Family of Products withROCm and OpenCL development kit
  2. Install AMD's MIVisionX toolkit : AMD's MIVisionX toolkit is a comprehensive computer vision and machine intelligence libraries, utilities
  3. CMake,Caffe
  4. Google's Protobuf

Steps

% git clone https://github.com/srohit0/trafficVision

1. Model Conversion

This steps downloads yolov2-tiny for voc dataset and converts to MIVision's openVX model.

% cd trafficVision/model% bash ./prepareModel.sh

More details on the pre-requisite (likecaffe) of the model conversion in themodels/ dir.

2. MIVision Model Compilation

% cd trafficVision% make

3. Test App

% cd trafficVision% make test

It'll display detection all videos in media/ dir.

Design

This section is a guide for developers, who would like to port vision and object detections models to AMD's Radeon GPUs from other frameworks includingtensorflow,caffe orpytorch.

High Level Design

Lower Level Modules

These lower level modules can be found as python modules (files) or packages (directories) in this repository.

Development

Model Conversion

Follow model conversion process similar to the one described below.

Infrastructure

Make sure you've infrastructure pre-requisites installed before you start porting neural network model for inferencing.

Developed and Tested on

  1. Hardware
    1. AMD Ryzen Threadripper 1900X 8-Core Processor
    2. Accelerator = Radeon Instinct� MI25 Accelerator
  2. Software
    1. Ubuntu 16.04 LTS OS
    2. Python 2.7
    3. MIVisionX 1.7.0
    4. AMD OpenVX 0.9.9
    5. GCC 5.4

Credit

  • MIVisionX Team

References

  1. yoloV2 paper
  2. Tiny Yolo aka Darknet reference network
  3. MiVisionX Setup
  4. AMD OpenVX
  5. Optimization with OpenVX Graphs
  6. Measuring Traffic Speed With Deep Learning Object Detection

[8]ページ先頭

©2009-2025 Movatter.jp