Concurrent EDA Concurrent EDA
  • Home
  • Services
    • Vision Design Services
    • FPGA Cloud Design
    • Software Analysis
  • IP Cores
    • Image Processing
    • Security
      • MD5 Stream Authentication
    • Math Cores
    • Networking Cores
      • High-availability Seamless Redundancy/Parallel Redundancy Protocol (HSR-PRP) Switch Core
      • Managed Redundant Switch Core
      • Managed Ethernet Switch
      • Unmanaged Ethernet Switch
      • Multiport Time Sensitive Networking Switch Core
    • Synchronization Cores
      • MultiSync Core
      • PreciseTimeBasic Core
      • 1588Tiny: Slave Only Core
      • IRIGtimeM
      • IRIGtimeS
    • Cybersecurity Cores
      • Substation Automation Systems Cryptographic IP Core Info
      • COEsec
    • Evaluation Kits
      • Multiport TSN Kit
      • Zynq HSR/PRP/PTP Card
      • SMARTzynq Brick
      • SMARTzynq Switch Module
      • SMARTmpsoc Module
      • SMARToem Module
      • NEToem Module
  • FPGA Modules
    • AMD Embedded+
    • Versal AI Edge
      • AMD Versal AI Edge Evalboard with VE2302 device
      • Versal TE0955 SoM w/ VE2302 device
    • Zynq UltraScale+
    • Zynq US+ Andromeda
    • Zynq UltraScale+ RFSoC
    • Zynq 7000 Series
      • JumpStart Design
    • Kintex UltraScale
    • Kintex 7
    • Artix 7
    • Spartan UltraScale+
    • Spartan 6 Ethernet
    • Spartan 6 USB
    • Intel SoM
    • Carrier Boards
      • TE0705 - Zynq 4x5 (Simplified)
      • TEBF0808 - TE080X UltraITX+ Base
    • Dev Boards
      • EDDP Motor Control Kit
      • Red Pitaya
  • Cameras
    • Super High Resolution
    • High Resolution
    • Beyond Visible
    • Camera Bundles - 1.1 MP
    • Camera Bundles - 2.1 MP
    • GigaSens HS 2-561 CXP
    • GigaSens HS 2-1123 CXP
    • GigaSens HS 2-2247 CXP
    • GigaSens HS 2-500 10GigE
    • GigaSens CV 1.1 CXP
    • GigaSens CV 2.0 CXP
    • GigaSens CV 2.0 10GigE
    • GigaSens HDK
    • EoSens 25CXP+
    • EoSens 21CXP2
    • EoSens 12CXP+
    • EoSens 4CXP
    • EoSens 3CXP
    • EoSens 2.0CXP2
    • EoSens 1.1CXP2
  • Frame Grabbers
    • Euresys Coaxlink Series
    • Silicon Software
      • microEnable 5 Marathon
      • Design Services
      • VisualApplets 3
      • VisualApplets Expert
      • VisualApplets Libraries
      • VisualApplets Protection
      • VisualApplets Embedder
  • News
  • Contact

Image Processing FPGA Cores

Image processing is any form of signal processing for which the input is an image, such as photographs or frames of video, and the output is either an image or a set of characteristics or parameters related to the image. Most image-processing techniques involve treating the image as a two-dimensional signal and applying standard signal-processing techniques to it.
Examples of Image Processing:
One example of image processing is filtering. Filtering an image is performed by altering, or convolving, the image by applying an n x n matrix of signed integers, known as the filter, to every color channel (each RGB) of every pixel. The size of a filter is usually 3x3, 5x5, 7x7 or even 9x9, but can be even larger if desired. A 5x5 convolution requires over 100 computations per pixel. Even at 640 x 480 resolutions, this requires over 30 million computations. For video at 30 frames/second, this requires over 920 million computations. For RGB images, the computations are performed on each color, resulting in over 2.7 billion computations per second.
Concurrent EDA has the capability to rapidly create image processing cores that operate at 1 to 100 billion operations per second. The following are completed cores that implement image processing functions and illustrate the types of cores that Concurrent EDA can create using our automation tools.

FPGA Image Processing Cores

Core NameDescriptionPerformance and Area
Convolution
3x3 Coefficients
A general coefficient convolution core that incorporates a library of routines to perform 1D and 2D convolution for both real and complex data and is able to apply several effects to a given image.
  • 35 Giga-ops/sec
  • 200 MHz
Convolution
5x5 Coefficients
Same as above but with a 5x5 window of coefficients.
  • 78 Giga-ops/sec
  • 200 MHz
Convolution
7x7 Coefficients
Same as above but with a 7x7 window of coefficients.
  • 144 Giga-ops/sec
  • 200 MHz
Emboss Embossing is the process of creating a three-dimensional image in paper materials through heat or pressure. For digital images, the same visual effect can be achieved.

Reference: Image Embossing
  • 35 Giga-ops/sec
  • 200 MHz
Gaussian Blur Gaussian blur describes blurring an image by a Gaussian function. It is a widely used effect in graphics software, typically to reduce image noise and reduce detail. The visual effect of this blurring technique is a smooth blur resembling that of viewing the image through a translucent screen.

Reference: Gaussian Blur
  • 35 Giga-ops/sec
  • 200 MHz
Motion Blur A special coefficient convolution filter applied to an image to blur the motion of an image.

Reference: Motion Blur
  • 35 Giga-ops/sec
  • 200 MHz
Sharpen A special coefficient convolution filter applied to an image to sharpen the attributes of that image.

Reference: Unsharp Masking
  • 35 Giga-ops/sec
  • 200 MHz
Computer Vision OpenCV Library Interested in a computer vision core? If you can find it within the open-source OpenCV library, then we can create it.

Reference: Computer Vision OpenCV
  • Multiple Giga-ops/sec
  • 30+ frames/sec
  • 200 MHz

Contact

  Telephone 412.687.8800
  Address 5001 Baum Blvd Ste 640
Pittsburgh PA 15213
  Email info@concurrenteda.com
Bootstrap is a front-end framework of Twitter, Inc. Code licensed under MIT License. Font Awesome font licensed under SIL OFL 1.1.