Skip to content
@Digital-Camera-ASIC

Digital Camera ASIC

HOG-Based Real-Time Human Detection ASIC for Smart Video Surveillance at the Edge

Digital Camera ASIC

Demo Video: Youtube

1. Introduction

We aim to design an ASIC for surveillance digital cameras, which will support edge computing for local image processing to reduce network bandwidth usage and server resources required for image processing.

The ASIC provides some features

  • Capturing images from a camera interface
  • Streaming frames to a display interface.
  • System programmable via a processor
  • Object classification via an image processor

Therefore, when the Image Processor identifies frames containing relevant objects, the user can decide whether to stream those frames to the display interface via the processor.

2. System architecture

image

2.1. Interface description

The system has 3 main interfaces:

InterfaceDescription
Program portThis interface is used to load the program into the system to configure parameters of the camera controller, display controller, mode of the system, etc.
Camera interfaceThis interface is used to capture images into the system via the camera interface
Display interfaceThis interface is used to display frames via the display interface

2.2. Block description

The ASIC is divided into 2 subsystems:

  • Configuration subsystem
  • Image Processing subsystem

2.2.1. Configuration subsystem

Block NameDescription
ProcessorThe processor block (RV32) is the system's processor, which provides users with the function to configure internal components and the mode of the ASIC.
MEMThe Configuration subsystem's memory
UARTThe UART peripheral is used to load the program into the system or communicate with other devices

2.2.2. Image Processing subsystem

Block NameDescription
Image ProcessorThe Image Processor is used to process the frames when they enter the system
Camera InterfaceThe Camera interface is used to capture the image into the system
Display InterfaceThe Display interface is used to display the image
DMAThe DMA is used to arbitrate between and fetch frames into the Display Interface and Image Processor
VMEMThe memory to store the frames from the Camera Interface

Popular repositories Loading

  1. HOG_SVM_FPGA HOG_SVM_FPGAPublic

    SystemVerilog 1

  2. AXI4-Frame-Fetch AXI4-Frame-FetchPublic

    Verilog

  3. .github .githubPublic

  4. Image-Processor Image-ProcessorPublic

    Verilog

  5. dcasic dcasicPublic

    Forked from atfox272/dcasic

    Verilog

Repositories

Showing 5 of 5 repositories

Top languages

Loading…

Most used topics

Loading…