Python代写-ITNPAI1
时间:2022-03-16
Spring 2022

ITNPAI1 - Assignment (Compulsory)
Submission due: Tuesday 12th April ‘22 | Demonstrations: 8th, 11th, 12th April ’22
Brief
The assignment is divided into two main tasks: 1) image denoising [50%] and 2) image classification
[50%] and involves the development of the algorithms. Your task is to develop the algorithms,
preparation of the results and write a combined report. The report for both parts should include
1. a brief introduction to the problem (you may cite a couple of current literature),
2. description of your algorithm,
3. short description of the libraries/function you have used in work,
4. presentation of the results,
5. key findings from the results and associated discussions and
6. conclusions.


The submission should include:
1. A PDF report – with two marked sections
2. A GitHub repository* consisting of two folders (one for each part of the assignment) which
should include all Python code in Jupyter Notebook format.
TASK A: Image denoising
Image denoising is a fundamental image processing problem and the basis for a pre-processing step
for many advanced computer vision tasks. Your task is
1. To write codes (must be well commented) with the following denoising methods (You can
make use of any library you want). [15]
a. Mean filter
b. Median filter
c. Wavelet
d. Deep learning (you are free to choose any pre-trained model you want – but you need
to justify why did you select this model). You are not expected to train a new model
for this part.
The input to your code will be original and noisy images. The output will be denoised images.
2. Compare the original and denoised images using two metrics (use any library), such as, [5]
a. Mean Squared Error (MSE) and
b. Structural SIMilarity (SSIM) index
3. Generate and report results (some sample images and graphs/tables) using the given dataset
of 25 original and noisy images. Data acknowledgement: The Berkeley Segmentation Dataset
and Benchmark https://www2.eecs.berkeley.edu/Research/Projects/CS/vision/bsds/ [5]
4. Write a report as described at the beginning of the brief. [20]
5. Demonstrate your code and answer questions. (COMPULSORY) [5]
Total for TASK A [50]
You need to demonstrate (compulsory) the code and answer related questions on designated
days. If you fail to demonstrate (/absent), entire corresponding task(s) will be marked as zero.
Spring 2022

TASK B: Image classification
Image classification is an important task for computer vision applications. Image classification
algorithms made advancements from traditional feature-based methods to deep learning-based
techniques. Deep learning, particularly the convolutional neural network, has been a success story in
the last decade and significantly improved classification accuracy. In this task, you need to build a CNN
architecture and optimise it for classification. Following tasks are to be carried out. You can use CSM
Jupyter Hub or Google Colab (https://colab.research.google.com/) with the GPU option enabled
where suitable. Please use Keras deep learning framework for this part of the assignment.
1. Write code (must be well commented) to build a basis CNN architecture [15]
• Load the CIFAR10 small images classification dataset from Keras inbuilt datasets
(https://keras.io/api/datasets/cifar10/). Display 10 random images from each of the 10
classes (the images should change in every run).
• For the classification (10 image classes), write Python code to create a basic CNN network of
your choice (can be anything from practical 7, LeNet, AlexNet etc.)
• Train and test the network and report the training loss, training accuracy and test accuracy for
various epochs.
2. CNN architecture improvements [10]
• Improve the architecture by changing the parameters, including but not limited to, learning
rate, epochs, size of the convolution filters, use of average pooling or max pooling etc.
• Improve the architecture by introducing more convolutional and corresponding subsampling
layers.
For both 1. and 2. your code should accept a single image on the trained network and produce the
output class.
3. Write a report as described at the beginning of the brief. [20]
4. Demonstrate your code and answer questions. (compulsory) [5]
Total for PART B [50]
Submission
The assignment is worth 100% of the overall grade for ITNPAI1 and is compulsory. It should be in the
order of 2,500 words in length (excluding the figures, tables and references). It should be submitted
as a PDF and python codes (through Github*) by the deadline mentioned in the beginning, using the
ITNPAI1 Assignment page on Canvas. Provide the Github repository link on the report as well as on
the comment section of the assignment submission page.
*Instructions for Github
Github is a popular software version control system where one can share codes. An account could be
easily obtained by registering (in case you don’t have one) on this website: https://github.com/. Once
you have the account follow the steps below:
1. Create a private repository for this assignment and share with the following usernames:
dbhowmik, sandyCarmichael, Teymoor-Ali.
Spring 2022

2. Regularly commit your code to the repository throughout the assignment period. Do not try
to commit in one go at the end. As GitHub is a version control system it is always good to
commit (/save) the code in regular intervals so that your code is not lost accidentally.
a. Regular commit to the repository is necessary and would avoid the questions of
‘Academic Misconduct’.
b. After the submission deadline, we may monitor the commits in the end if there are
reasonable doubts about academic misconduct.
Referencing
You must follow the IEEE referencing style details which can be found here:
https://ieeeauthorcenter.ieee.org/wp-content/uploads/IEEE-Reference-Guide.pdf
Plagiarism
Work which is submitted for assessment must be your own work. Plagiarism means presenting the
work of others as though it were your own. The University takes a very serious view of plagiarism, and
the penalties can be severe (ranging from a reduced mark in the assessment, through a fail mark for
the module, to expulsion from the University for more serious or repeated offences). Consequently,
we check submissions carefully for evidence of plagiarism and pursue those cases we find. Further
details about the university policy on academic misconduct can be found here:
https://www.stir.ac.uk/media/stirling/services/academic-registry/documents/policy-and-procedure-
academic-integrity-misconduct.docx
Late submission
If you cannot meet the assignment hand-in deadline and have good cause, please see Dr Bhowmik to
explain your situation and ask for an extension (any extension request will strictly be treated according
to the university guidelines). Coursework will be accepted up to seven days after the hand-in deadline
(or expiry of any agreed extension), but the mark will be lowered by three marks per day or part
thereof. After seven days, the work will be deemed a non-submission. Please note that the
demonstrations days are fairly fixed and won’t be extended unless there is a compelling reason.
Marking and feedback
Marks will be given for each of the two tasks following the University of Stirling’s common marking
scheme for postgraduate students (https://bit.ly/3vnCuRH). Please note that the marking scheme is
not linear, which means achieving higher grades will be increasingly challenging and should meet the
expectations of the common marking scheme.
Written feedback will be provided along with the marks on or before Tuesday 3rd May 2022 (within
three weeks of the submission deadline). If you are not satisfied with the marks and feedback, you are
welcome and encouraged to discuss individually with Dr Bhowmik.
Note
Students should be aware that a copy of their coursework will be retained in Canvas and it may be
used anonymously to create an exemplar answer for future students. If you do not wish your
coursework to be used for this purpose, please inform the module co-ordinator upon submission using
the Comments box.

essay、essay代写