CS代写 CS4551_[YourLastName].java (eg. CS4551_Doe.java) and expand the given templ

2022/5/5 20:19 Bonus Project – Error Diffusion
Bonus Project – Error Diffusion
5 16 23:59 110 java txt 4 27 0:00 5 16 23:59 20
In this project, we’ll work on one important technique to improve visual quality on display devices with limited number of representative colors, error diffusion.

Copyright By PowCoder代写 加微信 powcoder

Programming requirements:
You are not allowed to use any Java built-in image class methods, library, or tools to complete this homework.
Do not create one mega-size main class.
Do not change any given methods of MImage class nor create a new class that duplicates MImage class. Treat MImage as a part of imported library.
Test your program with all test data.
If you do not meet any of the requirements above, you will receive a significant reduction.
What your program should do
Name your main application CS4551_[YourLastName].java (eg. CS4551_Doe.java) and expand the given template program to perform the required tasks.
Receive the input image file as command line arguments.
On Command Prompt java CS4551_ .ppm
Read a 24bit input PPM image and display the following main menu to the user and receive the user¡¯s input.
Main Menu———————————– 1. 8-bit UCQ and Error Diffusion
2. Generic UCQ and Error Diffusion 3. Quit
Please enter the task number [1-3]:
https://calstatela.instructure.com/courses/73236/assignments/1170200
Ìì ÈÕÔÂÖÁÈÕÔÂÓÃ¿É ºÍ ÐÍÀà¼þÎÄ ¼þÎÄ´«ÉÏ·ÝÒ» ½»Ìá ·ÖµÃ ¼­±à ÓÉÈÕ Ô ֹ½Ø

2022/5/5 20:19 Bonus Project – Error Diffusion
After performing a selected task, go back to display the menu again.
Task 1 – 8-bit UCQ and Error Diffusion (80 pts)
In general, the error diffusion algorithm on color image consists of two stages: quantization and error diffusion.
For each pixel at position , its R/G/B values are quantized as follows:
Error Diffusion:
After quantization, each pixel will have quantization errors in R/G/B channel as follows:
These quantization errors will be dispersed to the four future neighbors using the Floyd weight factor: *
For example, the right pixel’s R/G/B values (before quantization) will be updated as follows:
After the updating, these neighbors’ R/G/B values may be out of the range of and clipping shall be employed.
Task 2 – Generic UCQ and Error Diffusion (20 pts)
https://calstatela.instructure.com/courses/73236/assignments/1170200

2022/5/5 20:19 Bonus Project – Error Diffusion
In 8-bit UCQ, 3/3/2-bits are used for the R/G/B channel indexes. In generic UCQ, the number of index bits for each R/G/B channels, , , and , shall be entered from the user.
The quantization steps for the R/G/B channels are as follows:
The quantized R/G/B values will be:
Submission Format
Submit source codes with necessary files for ¡°compile and run¡±.
Do NOT submit data files.
You MUST provide a readme.txt file containing all information to help with the grading process.
If your program produces any compile errors, you will receive 0 automatically no matter how close your program is to the solution.
https://calstatela.instructure.com/courses/73236/assignments/1170200

程序代写 CS代考 加微信: powcoder QQ: 1823890830 Email: powcoder@163.com