Looking for help with MATH1143 Resit Coursework Briefing
Need assignment writing help for MATH1143 Resit Coursework Briefing?
MATH1143 Resit Coursework Briefing
The resit coursework provides an opportunity to show that you have met the practical learning outcomes of the module.
If you have not submitted the coursework which was due in Term 2 of the 2021-22 academic session but you have been allowed a resit opportunity, then you may choose either of the following options for the resit coursework assignment.
If you have submitted the coursework which was due in Term 2 of the 2021-22 academic session but did not receive a passing grade and you have been allowed a resit opportunity, then you should choose the option that you have not yet attempted.
Now that you have familiarised yourself with MATLAB through the ‘Onramp’ introduction and the examples you have seen in class, you are ready to use it in the context of an engineering problem.
Option 1: Modelling of the forces acting inside a bulk solids silo.
Option 2: Writing your own Matlab code to remove noise from a digital image.
Option 2: Removing noise from digital images
Digital images are displayed as a matrix of picture elements (pixels). When viewed from far enough away, the individual pixels are not visible but appear to form a continuous image. Digital images come in many formats (some compressed, some uncompressed) but they all contain the information necessary to generate the matrix of pixels that form the desired image. Figure 3 shows a section of an image that has been enlarged to the point where the individual pixels are visible.
Figure 3: Enlarged section of a photo to show individual pixels
One way to store colour information in a digital image is to assign the intensity of red, green, and blue (RGB) of each pixel as an integer between 0 and 255, where 0 is no intensity and 255 is maximum intensity, allowing 256 different values. The total number of colour possibilities is therefore . (Note that other ways to store colour information also exist, but this is the one that will be used for the coursework.)
Colour digital images can be imported as a matrix and manipulated in software such as Matlab in to change, enhance or bring out selected features of an image. The images can be stored using a ‘stack’ of three two-dimensional matrix ‘layers’ where each matrix stores values the red, green and blue pixel intensities respectively. This makes up a three-dimensional matrix overall. Black & white images don’t require colour information, so they can be stored as a single two-dimensional matrix of grayscale intensity values.
Image noise reduction using spatial filtering
Sometimes digital images suffer degradation in the form of digital noise. This can result from a variety of sources such as electrical noise in the camera itself, noise introduced by digital transmission etc. Once an image has been degraded by noise some of the original information in the image is lost, but through restoration techniques it is sometimes possible to recover some of the image quality.
One way to attempt to restore an image is to consider each pixel’s value together with its neighbours. The pixel value is replaced with either the mean of itself and its neighbours (a ‘mean filter’) or the median of itself and its neighbours (a ‘median filter’). The size of the neighbourhood can be varied, as shown in Figure 4, and the neighbourhood size that achieves the best result can be selected. This type of processing is called a spatial filter.
pixel neighbourhood pixel neighbourhood
Figure 4: Pixel neighbourhoods, highlighted yellow, for image filtering
Using Matlab, develop an algorithm that implements a spatial filter which attempts improve the image quality of the following two given noisy images, which are available from the MATH11143 Moodle page:
• latte_noisy.bmp (black & white image)
• phonebox2_noisy.bmp (colour image)
The two files above are available from the course Moodle page in the assignment brief folder.
Note: you may not use any of the specialised image filtering toolbox functions in Matlab, such as imfilter() medfilt2(). Your code for performing the filtering operation must use the matrix elements themselves for the calculations, along with programming constructs such as ‘for loops’. Some other Matlab functions that you will find useful include:
• imread to import images as a matrix into Matlab, for example:
myImage = imread(‘latte_noisy.bmp’)
• imshow to show a Matlab matrix as an image, for example:
• imwrite to write a matrix as an image to a file, for example:
As a guide, the following questions should be addressed in your investigation:
- Compare the effectiveness of median and mean filters in removing the noise from the given images (latte_noisy.bmp and phonebox2_noisy2.bmp. Which works best in each case?
- What is the best neighbourhood size for the filters in each case?
- Why does it take a rather long time for Matlab to calculate the result?
For either Option 1 or Option 2, a report must be written that includes the following main headings. You should include sub-headings as appropriate.
The maximum length of the report is 2000 words. There is no minimum word count, but all aspects of the assignment must be covered.
All calculations and graphs must be produced using a suitable Matlab script. A comprehensive account of the development of the Matlab script should be provided in the report. The full, appropriately comment Matlab script itself should be included in the report in an appendix (which does not count toward the overall word count limit)
This is a summative assessment contributing 40% of the coursework grade.
The report must be submitted in Word format by the due date using the upload link in Moodle. The due date can be seen by selecting the upload link.
Note that Moodle will be set so that it is only possible to upload a single document that must be in Word format. Email submissions will not be assessed, as assessment is done entirely within Moodle.
The assessment rubric can be seen by following the resit coursework upload link on the module Moodle page.