0% found this document useful (0 votes)
52 views

Image Filter: Aim of The Project

The document describes an image filtering project that uses a 3x3 sliding window to apply smoothing and sharpening filters to grayscale images. It involves downloading an image file, performing the filtering operations using convolution, and uploading the filtered image back to a file. Key challenges include converting between integer pixel values and ASCII characters for file I/O, handling fractional and negative values from the convolution, and ensuring pixel values remain in the valid 0-255 range. The project will be implemented in modules for receiver, integer conversion, memory, convolution, and transmitter. Applications include use by law enforcement for image analysis and improving image quality for OCR.

Uploaded by

Sourav151299
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
52 views

Image Filter: Aim of The Project

The document describes an image filtering project that uses a 3x3 sliding window to apply smoothing and sharpening filters to grayscale images. It involves downloading an image file, performing the filtering operations using convolution, and uploading the filtered image back to a file. Key challenges include converting between integer pixel values and ASCII characters for file I/O, handling fractional and negative values from the convolution, and ensuring pixel values remain in the valid 0-255 range. The project will be implemented in modules for receiver, integer conversion, memory, convolution, and transmitter. Applications include use by law enforcement for image analysis and improving image quality for OCR.

Uploaded by

Sourav151299
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

Image Filter

Aim of the Project


• Designing an Image Filter that uses a 3X3 Sliding Window.
• Downloading the image file to be filtered using a serial Receiver from a
file into the memory.
• Apply filtering operations on the image which includes Smoothening
Filter and a Sharpening Filter.
• Integrating switching between different filters using a switch.
• Uploading the filtered Image back into another file through Transmitter.

Scope
• The format of the image must be pgm.
• The image is Grayscale image with pixel values lying between 0 to 255.
• The convolution matrix is a 3X3 matrix which varies with the type of filter.
• The Filters shall include two operations sharpening and smoothening.

Why is our goal hard to achieve?


Downloading and Uploading of file:
• The downloading of file from memory reads integers as characters which
need to be converted into integers using correct ASCII to Integer
Conversion.
• Comments, spaces, Tabs and New lines in the file need to be dealt.
• The returned Matrix which is in form of integers need to be converted
back into characters based on their ASCII codes and uploaded back into
the file in the pgm format int the standard format.
Invalid Pixel Values:
• The convolution matrix calls for the need to represent decimal or
fractional values, which needs to be dealt appropriately.
• The negative numbers also needs to be represented using a signed
representation or other forms like 2’s complement form etc.
• When the convolution matrix is scaled up by some factor the pixel values
may exceed 255 which need to be dealt at the end by division of a factor.
• Due to negative values in the sharpening convolution matrix some values
may fall below zero, such values need to be scaled up to zero value.
Design Plan:

The modules and the signals present are:


Receiver: This receives data as rx_in serially and transmits it parallely
as rx_data. rx_full denotes that the integer has been converted and
ready for storage in memory.
Character_to_integer: This takes the rx_full as input and converts the
characters received into integral number and outputs it as integer_in.
It gives out write enabling signal as wen1 and the address of the
memory block where the integer needs to be stored as wr_addr1.
Memory_In: It receives wen1, wr_addr1 and integer1 as input. The
int_process gives the integer stored for processing in the convolution
module.
Convolution Module: It receives ren1 and rd_addr1 as inputs from
memory_out to read the integers for convolution processing and
sends the processed output to memory_out for storage at address
wr_addr2. The value is sent as integer_out and wen2 is the write
enabling signal.
Memory_out: It sends the numbers digit by digit to the Integer to
Character module. The ren2 signal and rd_addr2 facilitates the
reading of integers from the memory_out.
Integer to Character: This module converts the character to 8 digit bit
vector and outputs the same to Transmitter.
Transmitter: It receives the data as tx_data and transmits the same to
computer for writing it in a file.

Timeline:
By 2nd Week we plan to complete the part implementing the downloading of
the file and conversion of character stream to Integer and vice versa.
By 3rd Week we plan to complete the Convolution Module implementing the
filtering part.
By 4th Week we plan to test the project and make some necessary corrections.

Real Applications of the project:


• Can be used by Investigation departments to apply image filters to
extract information about a person.
• Can be used to improve image quality to allow better Optical Character
Recognition on images to extract text.
• Can be used in general photo editing tools.

Submitted By

Sourav Bansal – 2018CS50421

Manav Bansal – 2018CS50410

You might also like