πŸ“š
DLIP
  • Introduction
  • Prerequisite
  • Image Processing Basics
    • Notes
      • Thresholding
      • Spatial Filtering
      • Masking with Bitwise Operation
      • Model n Calibration
    • Tutorial
      • Tutorial: Install OpenCV C++
      • Tutorial: Create OpenCV Project
      • Tutorial: C++ basics
      • Tutorial: OpenCV Basics
      • Tutorial: Image Watch for Debugging
      • Tutorial: Spatial Filter
      • Tutorial: Thresholding and Morphology
      • Tutorial: Camera Calibration
      • Tutorial: Color Image Processing
      • Tutorial: Edge Line Circle Detection
      • Tutorial: Corner Detection and Optical Flow
      • Tutorial: OpenCV C++ Cheatsheet
      • Tutorial: Installation for Py OpenCV
      • Tutorial: OpenCv (Python) Basics
    • LAB
      • Lab Report Template
      • Lab Report Grading Criteria
      • LAB Report Instruction
      • LAB: Grayscale Image Segmentation
        • LAB: Grayscale Image Segmentation -Gear
        • LAB: Grayscale Image Segmentation - Bolt and Nut
      • LAB: Color Image Segmentation
        • LAB: Facial Temperature Measurement with IR images
        • LAB: Magic Cloak
      • LAB: Straight Lane Detection and Departure Warning
      • LAB: Dimension Measurement with 2D camera
      • LAB: Tension Detection of Rolling Metal Sheet
  • Deep Learning for Perception
    • Notes
      • Lane Detection with Deep Learning
      • Overview of Deep Learning
        • Object Detection
        • Deep Learning Basics: Introduction
        • Deep Learning State of the Art
        • CNN, Object Detection
      • Perceptron
      • Activation Function
      • Optimization
      • Convolution
      • CNN Overview
      • Evaluation Metric
      • LossFunction Regularization
      • Bias vs Variance
      • BottleNeck Unit
      • Object Detection
      • DL Techniques
        • Technical Strategy by A.Ng
    • Tutorial - PyTorch
      • Tutorial: Install PyTorch
      • Tutorial: Python Numpy
      • Tutorial: PyTorch Tutorial List
      • Tutorial: PyTorch Example Code
      • Tutorial: Tensorboard in Pytorch
      • Tutorial: YOLO in PyTorch
        • Tutorial: Yolov8 in PyTorch
        • Tutorial: Train Yolo v8 with custom dataset
          • Tutorial: Train Yolo v5 with custom dataset
        • Tutorial: Yolov5 in Pytorch (VS code)
        • Tutorial: Yolov3 in Keras
    • LAB
      • Assignment: CNN Classification
      • Assignment: Object Detection
      • LAB: CNN Object Detection 1
      • LAB: CNN Object Detection 2
      • LAB Grading Criteria
    • Tutorial- Keras
      • Train Dataset
      • Train custom dataset
      • Test model
      • LeNet-5 Tutorial
      • AlexNet Tutorial
      • VGG Tutorial
      • ResNet Tutorial
    • Resource
      • Online Lecture
      • Programming tutorial
      • Books
      • Hardware
      • Dataset
      • Useful sites
  • Must Read Papers
    • AlexNet
    • VGG
    • ResNet
    • R-CNN, Fast-RCNN, Faster-RCNN
    • YOLOv1-3
    • Inception
    • MobileNet
    • SSD
    • ShuffleNet
    • Recent Methods
  • DLIP Project
    • Report Template
    • DLIP 2021 Projects
      • Digital Door Lock Control with Face Recognition
      • People Counting with YOLOv4 and DeepSORT
      • Eye Blinking Detection Alarm
      • Helmet-Detection Using YOLO-V5
      • Mask Detection using YOLOv5
      • Parking Space Management
      • Vehicle, Pedestrian Detection with IR Image
      • Drum Playing Detection
      • Turtle neck measurement program using OpenPose
    • DLIP 2022 Projects
      • BakeryCashier
      • Virtual Mouse
      • Sudoku Program with Hand gesture
      • Exercise Posture Assistance System
      • People Counting Embedded System
      • Turtle neck measurement program using OpenPose
    • DLIP Past Projects
  • Installation Guide
    • Installation Guide for Pytorch
      • Installation Guide 2021
    • Anaconda
    • CUDA cuDNN
      • CUDA 10.2
    • OpenCV
      • OpenCV Install and Setup
        • OpenCV 3.4.13 with VS2019
        • OpenCV3.4.7 VS2017
        • MacOS OpenCV C++ in XCode
      • Python OpenCV
      • MATLAB-OpenCV
    • Framework
      • Keras
      • TensorFlow
        • Cheat Sheet
        • Tutorial
      • PyTorch
    • IDE
      • Visual Studio Community
      • Google Codelab
      • Visual Studio Code
        • Python with VS Code
        • Notebook with VS Code
        • C++ with VS Code
      • Jupyter Notebook
        • Install
        • How to use
    • Ubuntu
      • Ubuntu 18.04 Installation
      • Ubuntu Installation using Docker in Win10
      • Ubuntu Troubleshooting
    • ROS
  • Programming
    • Python_Numpy
      • Python Tutorial - Tips
      • Python Tutorial - For Loop
      • Python Tutorial - List Tuple, Dic, Set
    • Markdown
      • Example: API documentation
    • Github
      • Create account
      • Tutorial: Github basic
      • Tutorial: Github Desktop
    • Keras
      • Tutorial Keras
      • Cheat Sheet
    • PyTorch
      • Cheat Sheet
      • Autograd in PyTorch
      • Simple ConvNet
      • MNIST using LeNet
      • Train ConvNet using CIFAR10
  • Resources
    • Useful Resources
    • Github
Powered by GitBook
On this page
  • LAB: CNN Object Detection 1
  • Parking Management System
  • I. Introduction
  • Guidelines
  • II. Procedure
  • III. Report and Demo Video
  • Report
  • Demo Video
  • Submission Check List

Was this helpful?

  1. Deep Learning for Perception
  2. LAB

LAB: CNN Object Detection 1

PreviousAssignment: Object DetectionNextLAB: CNN Object Detection 2

Last updated 11 months ago

Was this helpful?

LAB: CNN Object Detection 1

Parking Management System

Vehicle counting using a CNN based object detection model

I. Introduction

In this lab, you are required to create a simple program that (1) counts the number of vehicles in the parking lot and (2) display the number of available parking space.

For the given dataset, the maximum available parking space is 13. If the current number of vehicles is more than 13, then, the available space should display as β€˜0’.

image

Guidelines

The whole code should be programmed using OpenCV-Python and Pytorch.

  • DO NOT copy a project from online sites.

  • You can refer to any online material and github repository for assistance and getting ideas with proper reference citation.

  • Use pretrained YOLO v8.

    • You can also use any pretrained object detection model, such as YOLO v5

    • You can also train the model using custom/other open datasets

  • You can clone a github repository of the object detection model(e.g. YOLOv8), as long as you cite it in the reference.

Warning!

Your lab will not be scored if

* your program does not run 
  • If copied from the lab of previous years or from your classmates

  • or any other plagiarism

​

II. Procedure

  • Need to count the number of vehicles in the parking lot for each frame

    • DO NOT COUNT the vehicles outside the parking spaces

    • Consider the vehicle is outside the parking area if the car's center is outside the parking space

  • Make sure you do not count duplicates of the same vehicle

  • It should accurately display the current number of vehicle and available parking spaces

  • Save the vehicle counting results in 'counting_result.txt' file.

    • When your program is executed, the 'counting_result.txt' file should be created automatically for a given input video.

    • Each line in text file('counting_result.txt') should be the pair of frame# and number of detected car.

    • Frame number should start from 0.

    ex) 0, 12 1, 12 ...

  • In the report, you must evaluate the model performance with numbers (accuracy etc)

  • Your program will be scored depending on the accuracy of the vehicle numbers

    • TA will check the Frame 0 to the last frame

III. Report and Demo Video

This lab will be scored depending on the Contents, Complexity, and Completeness .

You are required to write a concise report and submit the program files and the demo video.

Report

The lab report must be written as a 'Tutorial' format to explain the whole process A to Z in detail.

  • Use the report template given here: https://ykkim.gitbook.io/dlip/dlip-project/report-template

  • Write the report in markdown β€˜*.md’ format

    • You can also write in ''*.ipynb' format

  • You need to include concise explanations and codes for each process in the report

  • You should embed code snippets where necessary

  • You can also embed your demo video in the report

Demo Video

You must create a demo video that shows the bounding box of the cars within the parking space only.

  • You can submit video file to TA's email or send the download link

Submission Check List

  1. Zip file of report and codes

  • Zip file named as : DLIP_LAB_PARKING_21700000_홍길동.zip

  • The Zip file includes

    • Report (*.md) or ( * .ipynb)

    • Report (*.pdf)

    • src (source codes under /src folder)

    • counting_result.txt

  1. Demo Video

  • Video file named as : DLIP_LAB_PARKING_VIDEO_21700000_홍길동

Download the test video file:

Answer File for Frame 0 to Frame 1500 are provided:

Also, see example tutorials: ,

click here to download
download file
example 1
example 2