Module title: Digital Imaging
Name of the assignment setter: Dr Boguslaw Obara
Method of submission: DUO.
0 General Requirements
The assignment has been made to demonstrate that students do understand the principles of Image Processing.
Implementation:
Use Java OpenCV or any other Java library to read image, access image pixels, and write image.
Do not use already implemented mathematical morphology functions in libraries, such as OpenCV (e.g. 'Imgproc.erode').
Make sure that your code can be compiled and can be run on Durham University Linux system with commands: 'java' and 'javac'.
Test your programs on an image 'lena.png' provided on DUO.
Students will be marked based on the quality of the code and image processing performance of the programs when compared with the the state-of-the-art implementations, and the quality of the written re ective report on their project.
0 Mathematical Morphology
2.1 Erosion (25%)
Implement grayscale erosion with a square structuring element of a size 5×5 pixels.
2.2 Dilation (25%)
Implement grayscale dilation with a square structuring element of a size 5×5 pixels.
2.3 Opening (15%)
Using your erosion and dilation implementations, implement a grayscale opening with a square structuring element of a size 5×5 pixels.
2.4 Closing (15%)
Using your erosion and dilation implementations, implement a grayscale closing with a square structuring element of a size 5×5 pixels.
2.5 Code Quality (10%)
Full principles of readable and reusable code apply. Each function/class should include:
A good help text explaining the function/class usage. Try using headers! Enough comments to aid the user in understanding the algorithm.
Avoid code redundancy making the code easier to read and keeping it organized.
2.6 Re ective report (10%)
Discuss the Mathematical Morphology in Digital Imaging:
1. Main Principles,
2. Three Selected Algorithms,
3. Three Selected Applications.
Your report should be no more than 750 words and should include a list of relevant references.
0 Submission:
To submit your work create a directory named by your username (e.g. abs123). Place all required les in this directory. ZIP (not .rar or .z7) this entire directory structure and submit it via DUO (late submissions will be penalised following department's policy).
You must submit the following:
Full Java programs source code for your solution to the above tasks.
Working programs meeting the above speci cations. Your programs should be run using the following com-mand line: 'java script lena.png lena script.png', where 'script' should be replaced by 'erosion', 'dilation', 'closing' or 'opening'.
Report (max. 750 words!).
The submitted zipped directory should contain only the following les:
erosion.java dilation.java opening.java closing.java erosion.class dilation.class opening.class closing.class report.pdf
0 Plagiarism:
You may use program source code from the provided course examples, the OpenCV library itself or any other source BUT this usage must be acknowledged in the comments of your submitted le. Automated software tools will be used to detect cases of source code plagiarism in this assignment exercise. This will include automatic comparison against code from previous year students but will also take account of common code examples given out as part of the course. Attempts to hide plagiarism by simply changing comments/variable names will be detected. Plagiarism is not fair on those who work hard on this assignment without resorting to plagiarising the work of others. The Department will always seek to address any instances of plagiarism following the rules set down by the University.
You should have been made aware of the Durham University policy on plagiarism. Anyone unclear on this must consult the course lecturer prior to submission of this assignment.
代写计算机编程类/金融/高数/论文/英文
本网站支持淘宝 支付宝 微信支付 paypal等等交易。如果不放心可以用淘宝或者Upwork交易!
E-mail:850190831@qq.com 微信:BadGeniuscs 工作时间:无休息工作日-早上8点到凌晨3点
如果您用的手机请先保存二维码到手机里面,识别图中二维码。如果用电脑,直接掏出手机果断扫描。