המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion - Israel institute of technology.

Slides:



Advertisements
Similar presentations
Performed by: Raz Zur Instructor: Boaz Mizrahi המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי לישראל הפקולטה.
Advertisements

Performed by: Andre Steiner Yael Dresner Instructor: Michael Levilov המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון.
Performed by: Tal Grylak Nadav Eitan Instructor: Moni Orbach Cooperated with: Eli Shushan המעבדה למערכות ספרתיות מהירות High speed.
Performed by: Karinne Attali Yotam Vit Instructor: Boaz Mizrahi המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
Performed by: Rea Yeheskel Yair Sommer Instructor: Idan Katz Cooperated with:Motorola הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion - Israel.
Performed by: Yair Sommer Rea Yeheskel Instructor: Idan Katz In Cooperation with:Motorola הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion -
Performed by: Osnat Shlomo & Sharon Shlomo Instructor: Yossi Hipsh המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
Performed by: Lin Ilia Khinich Fanny Instructor: Fiksman Eugene המעבדה למערכות ספרתיות מהירות High Speed Digital Systems Laboratory הטכניון - מכון טכנולוגי.
Performed by:david eyal tayar yosi Instructor: miki itzkovitz המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
Performed by: Edy Candel Yaakov Rakotch Instructor: Konstantin Sinyuk Cooperated with: PowerLoc המעבדה למערכות ספרתיות מהירות High speed digital systems.
Performed by: Volokitin Vladimir Tsesis Felix Instructor: Mony Orbah המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון.
Performed by: Farid Ghanayem & Jihad Zahdeh Instructor: Ina Rivkin המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
Presenters: Guy Elazar, Eyal Shindler Supervised By: Pavel Kislov, Inna Rivkin המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון.
Performed by:Fina Marganit Instructor: Ina Rivkin המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי לישראל הפקולטה.
המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion - Israel institute of technology.
Performed by: Igal Alterman Minkin Dmitri Instructor: Hen Broodney המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
Performed by: Rami May, Roee Cohen Instructor: Daniel Alkalay המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
Performed by: Oren Shalgi Alexander Badyan Instructor: Erez Zilber המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
Performed by : Rivka Cohen and Sharon Solomon Instructor : Walter Isaschar המעבדה למערכות ספרתיות מהירות High Speed Digital Systems Laboratory הטכניון.
המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion - Israel institute of technology.
Performed by: Ariel Wolf & Elad Bichman Instructor: Yuri Dolgin המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
Performed by: Maria terushkin & Guy Ovadia Mony Orbach Instructor: Mony Orbach Cooperated with: Alex Bekker (EO Laboratory) המעבדה למערכות ספרתיות מהירות.
המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion - Israel institute of.
Performed by: Asaf Gal Elad Ilan Instructor: Alex Zviagintsev המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
Performed by: Niv Tokman Guy Levenbroun Instructor: Leonid Boudniak המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון.
Performed by: Aaron Avi Magal Anat Paskin Instructor: Evgeny Rivkin המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון.
המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion - Israel institute of.
Performed by: Yair Sommer Rea Yeheskel Instructor: Idan Katz In Cooperation with:Motorola הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion -
Performed by: Gadi Marcu & Tomer Alon Instructor: Erez Zilber המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion - Israel institute of technology.
Performed by: Oron Port Instructor: Mony Orbach המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי לישראל הפקולטה.
Performed by: Alex Shpiner Eyal Azran Instructor: Boaz Mizrachi המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
Performed by: Guy Zur, Eithan Nadir Instructor: Igal Kogan Cooperated with: המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון.
1 Mid Presentation Optical Simulation System for Brain Waves Detection & Measurements המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory.
Performed by: Husam Khshiaboun & George Gantous Instructor: Yossi Hipsh המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון.
Performed by:Itzik Adzashvili Akiva Megrlashvili Instructor: Mony Orbach המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון -
Performed by:Teb David Krelshtein Leonid Instructor: Itzkovitz Michael המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון.
Performed by: Rapoport Alexandra Instructor: Rivkin Eugene המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
Performed by: Yifat Kuttner & Noam Gluzer Instructor: Boaz Mizrachi המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון.
Performed by: Anton Okun Lior Shvartzman Instructor: Michael Gendelsman המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון.
המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion - Israel institute of technology.
המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion - Israel institute of technology.
1 Final Presentation Optical Simulation System for Brain Waves Detection & Measurements המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory.
Performed by: Smadar Katan & Gal Mendelson Instructor: Yossi Hipsh המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
Performed by: Yevgeny Kliteynik Ofir Cohen Instructor: Yevgeny Fixman המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון.
1 Implementation in Hardware of Video Processing Algorithm Performed by: Yony Dekell & Tsion Bublil Supervisor : Mike Sumszyk Semesterial project SPRING.
XML Protocol for Manipulation and Control Elias Khoury Othman Kanj Final Presentation Supervisor: Mony Orbach הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת.
Presenters: Guy Elazar, Eyal Shindler Supervised By: Pavel Kislov, Inna Rivkin המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון.
Performed by:Yulia Turovski Lior Bar Lev Instructor: Mony Orbach המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
1 Implementation in Hardware of Video Processing Algorithm Performed by: Yony Dekell & Tsion Bublil Supervisor : Mike Sumszyk SPRING 2008 High Speed Digital.
Performed by: Lotem Sharon, Yuval sela Instructor: Ina Rivkin Cooperated with: Piltest המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory.
Performed by: Eliran Cohen & Michael Rapoport Instructor: Ina Rivkin המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון.
Performed by: Omer Katz Amir Flohr Instructor: Michael Itzkovitch המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
Performed by: Yulia Okunev Instructor: Yossi Hipsh המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי לישראל הפקולטה.
Performed by: Kfir Toledo Tzofnat Grinberg Instructor: Ina Rivkin המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
Performed by: Alon Berger, Maor Itzhak Instructor: Adi Hanuka Cooperated with: HaEmek Medical Center המעבדה למערכות ספרתיות מהירות High speed digital systems.
Performed by: Yarovoy Boris Dubossarsky Maxim Instructor: Michael Itzkovitz המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון.
Performed by: Alexander Pavlov David Domb Instructor: Mony Orbach המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
Performed by: Itamar Niddam and Lior Motorin Instructor: Inna Rivkin המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון.
Performed by: Yuval Carmel Avihoo Mishael Instructor: Orbach Mony Cooperated with: Qualcomm Israel המעבדה למערכות ספרתיות מהירות High speed digital systems.
המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion - Israel institute of technology.
Performed by: Nir Malka, Lior Rom Instructor: Mike Sumzik המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי לישראל.
Performed by: Sameeh J & khalid A Instructor: Mony Orbach המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי לישראל.
Performed by: Lior Zitalni & Yagel Metuky Instructor: Boaz Mizrahi המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
Performed by:Liran Sperling Gal Braun Instructor: Evgeny Fiksman המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory.
Performed by: Yotam Platner & Merav Natanson Instructor: Guy Revach המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון.
Performed by: Orit Arnon Dotan Barak Instructor: Yosi Hipsh המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
Performed by: Or Rozenboim Gilad Shterenshis Instructor: Ina Rivkin המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון.
Performed by:Eliel Peretz Tamir Malka Instructor: Mony Orbach המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
Performed by: Erez Davidi / Aviad Zrihen Instructor: Yaniv Ben-Yitzhak המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון.
Presentation transcript:

המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion - Israel institute of technology department of Electrical Engineering 2007 winter Final presentation (part B) Performed by: Cohen Ido, Volokitina Irina Instructor: Rivkin Ina, Technion Almog Asaf, Intel Denoising video in real time

Agenda Motivation and background. Optional concepts and solutions (Why bi-lateral filter?). Validation’s expectations Results’ validation (and more). Implementation in hardware (gidel and synplify). Conclusions Demonstration

Image noise – definition and more The term noise usually refers to the high frequency random perturbations. corresponds to visible grain or particles present in the image. Generally caused by the electronic noise in the input device sensor and circuitry (e.g. scanner, digital camera).

Type of noise

The solution is DENOISING Removing noise from data is often the first step in data analysis. Denoising techniques should not only reduce the noise, but do so without blurring or changing the location of the edges.

Optional concepts and solutions Diffused image. Bilateral filter.

Bilateral Simple implementation. Noniterative. Local. YUV. (CIE) Diffusion Complicating implementation. Iterative. Not local. RGB. Bilateral and diffusion filtering comparison Conclusion: local and noniterative characterizations make us to choose in bilateral algorithm

Bilateral filter Bilateral filtering smoothes images while preserving edges, by means of a nonlinear combination of nearby image values. The bilateral filter can enforce the perceptual metric underlying the CIE-Lab color space, and smooth colors and preserve edges in a way that is tuned to human perception.

VALIDATION Implement the algorithm with high level design tool MATLAB, and compare the denoising image and the original one.

Validation the solution’s correctness The indication for “success” or “fail” is MSE. The destination is to reduce the MSE by 50%.

Validation Process Noise (normal distribution) denoising unit (bilateral) + Input File (without noise) Output File MSE measurement RGBRGB RGBRGB RGBRGB RGBRGB RGBRGB RGBRGB RGBRGB configuration noisemaker MSE redaction percentage

Implementation and validation process MSE tester. Normal distribution noisemaker. Denoising unit. Stages in the implementation rgb2yuv function and opposite. Adaptive LPF. Fir select. Adaptive HPF.

Implementations stages Denoising unit (bilateral) RGB YUVYUV RGB RGBRGBRGBRGB YUV

Implementations stages Denoising unit (bilateral) RGB YUVYUV RGB RGBRGBRGBRGB YUV Adaptive LPF YUV configuration

Implementations stages Denoising unit (bilateral) RGB YUVYUV RGB RGBRGBRGBRGB YUV Adaptive LPF YUV configuration Fir select MUXMUX

Implementations stages Denoising unit (bilateral) RGB YCbCrYCbCr RGB RGBRGB RGBRGB YCbCr Adaptive LPF YCbCr configuration Fir select MUXMUX Adaptive HPF

expectations rgb2yuv and opposite – changing up to 10% in MSE. LPF – reducing MSE by at least 35% Adding fir select – reducing MSE by 5-10% HPF – reducing 10% MSE. Destination: reduction the MSE by 50%

Results rgb2yuv and opposite – changing up to 10% in MSE => less than 1%. LPF – reducing MSE by at least 35% => 44% Adding fir select – reducing MSE by 5-10% => 20% × HPF – reducing 10% MSE => add about 10% to MSE. Bottom line: reduction the MSE by 50% (and more) achieved

Original

noisy

filtered

final

Goals of project Implement denoise bilateral algorithm Denoise bilateral algorithm Noise No Noise = Video in Video out configuration

System Block Diagram Bilateral filterYCbCr RGB Denoise algorithm RGB YCbCr configuration Video in Video out Synplify implemented GIDEL implemented

Bilateral filter block Diagram HPF (3X3) LPF (3X3) MEMORYMEMORY Image analysis & Fir select Controller YCbCr configuration X X + Synplify implemented GIDEL implemented

Memory block Diagram MEMORYMEMORY YCbCr L[n] L[n-2] L[n-1] L[n] SYNPLIFY implemented YCbCr

HPF/LPF block HPF/LPF SYNPLIFY implemented L[n-2] L[n-1] L[n] FIR L[n-2] L[n-1] L[n] + L[n-1]

Image analysis & Fir select block diagram L[n-2] L[n-1] L[n] MIN last 3 clock MAX last 3 clock - >=< SYNPLIFY implemented

Controller block diagram SYNPLIFY implemented HPF coefficients LPF coefficients Threshold & weight parameter User definition

System block diagram Denoising unit (bilateral) RGB YCbCrYCbCr RGB RGBRGB RGBRGB YCbCr Adaptive LPF YCbCr configuration Fir select MUXMUX HPF Noise No Noise GiDEL PROCWizard

Implementation : System level top view (a) – input domain; (b) – delay line block; (c) – RGB to YCbCr transform blocks – one for each line; (d) – delay sample blocks; (e) – min max block; (f), (g) – synchronizing pipes; (h1) – LPF block; (h2) –HPF block; (k) – filter select domain; (l) – synchronizing domain; (m) – YCbCr to RGB block; (n) – output domain (p) – simplify tool button

Flow stages Stage 1 - break input stream to lines Input stream divided to 3 lines data stream while line to line delay is 800 pixels (screen resolution) by 3 registers when each one delayed from others according to line its responsible for.

Conversion algorithm taken from : RGB data is 24 bit pattern while each 8bit of it is a value for each one of 3 colors. e.i YCbCr from "digital 8-bit RGB“ Y = /256*(65.738*R *G *B) Cb = /256*( *R *G *B) Cr = /256*( *R *G *B) The inverse transform equivalent to the above is: 8-bit RGB from YCbCr R = ( *Y *Cr) / G = ( *Y *Cb * Cr) / B = ( *Y *Cb) / Flow stages (cont.) Stage 2 - RGB to YCbCr transform one for each line

(a) – input domain; (b),(e) – synchronizing domain; (c) – expand domain to expand 24 bit incoming pattern to three 8 bit patterns (see General description); (d) - Conversion domain (see general); (f) – output domain;

Flow stages (cont.) Stage 3 - get 3x3 matrix surrounding for each pixel X 3 =

Flow stages (cont.) Stage 4 – min/max evaluation (a) – In_y1 to In_y9 - data input domain; (b) – Cb and Cr components of input; (c) – Control signals inputs ( de_enable, vsync. hsync); (d) – Min, max evaluation domain ; (e) – In_y1 to In_y2 data transfer domain; (f) – Control signals synchronizing domain ; (g) – min and max values output; (k) – In_y1 to In_y2 data output; (h) – Cb and Cr components of output; (j) – Control signals inputs; Blue outlined vertical areas are synchronizing pipelines.

Flow stages (cont.) Stage 4(cont.)– min/max evaluation Max-min = Delta = Filter select indicator

Flow stages (cont.) Stage 5 - LPF

Flow stages (cont.) Stage 6 - HPF HPF bypass mechanism

Flow stages (cont.) Stage 7 - Filter select mechanism (a) – threshold input; (b) – comparator element; (c) – MUX; (d) –input from HPF_3x3 block ; (e) - input from LPF_3x3 block; (f) – filtered Y component of pixel All other element are for synchronizing.

Flow stages (last ) Stage 7 - YCbCr 2 RGB (a) – input domain; (b) - Conversion domain (see General description); (c) – synchronizing domain; (d) – concat domain to concat the three 8 bit patterns bits to 24 bit outgoing pattern to (see General description); (e) – output domain;

Summary and conclusions Summary We have implemented denoising bilateral algorithm using GIDEL's hardware and High Level Design tools as SynplifyDSP and SynplifyPro. The algorithm performs real-time adaptive filtering per pixel of video stream coming from the DVI input. Project goals are fully achieved. Conclusions  Not easy to implement on such data rates but - Can be done  Better results using HPF bypass -> Implemented HPF algorithm is not a best solution  Possible improvement :  other HPF algorithm or another filter selection algorithm (few threshold etc.)

Questions Demonstration