代写essay服务

五年专注新西兰代写essay 信誉保证
turnitin检测 保证原创率 高分通过

本公司成立以来,在代写essay领域获得了不错的口碑,98%以上的客户顺利通过..欢迎大家进行咨询和享受公司为你提供的全方位服务!不论你的essay有多难,deadline有多急,我们将给你带来最专业可靠的代写essay服务。

Order Now

CompSci 373 S1 C 2013 Assignment 3 代写

    CompSci 373 S1 C 2013 Assignment 3
    Due date: 8 th June 2013 11.59 pm (Electronic Drop Box)
    Goal: implementing image-processing functions with ImageJ.
    The assignment focuses on the Week 10 to 13 Lecture Notes, but you are also
    encouraged to read more about image processing online.
    This assignment is worth 8.33 % of your final mark..
    CompSci 373 S1 C 2013 Assignment 3  代写
    You must use ImageJ and the skeleton code provided with this assignment. The code
    you will add to the current template must be yours i.e. you must not re-use code from
    any of the built-in ImageJ functions. Get inspiration from the sample macro provided.
    About marking: The markers will need to run your code to assess your assignment.
    Make sure to run your ImageJ macros in any of the undergrad lab computers before
    submitting. Code must be commented (it will count for 15% of the overall assignment
    marking).
    Assignment focus: In this assignment you will use images acquired during a CT-
    scanning experiment being a part of an international multi-disciplinary project. The
    Image Processing component of the project quantified the amount of void in soils that
    relates directly to how fast the water permeates through the soil. This is an important
    factor in managing soil pollution for farmers around the world. Here, something went
    wrong with the industrial CT-scan used and images came out with quite different
    intensities for similar material.
    This assignment aims on exploring ways to correct such deviations (in order to ensure
    that similar materials have similar pixel intensities) and extract the darker pixels,
    which correspond to void in the image. You may wish to learn more about CT-scan
    imaging (aka X-ray computed tomography) at:
    http://en.wikipedia.org/wiki/X-ray_computed_tomography
    You may also want to learn more about the aforementioned research project at:
    http://www.cs.auckland.ac.nz/courses/compsci373s1c/assignments/2013/IP4ES_Imag
    e_Processing_for_Environmental_Science.pdf
    Important: While the images provided are 16 bits greyscale images, your macros
    must also handle 8 bits greyscale images.
    Part 1(Question 1): Median filtering [15 marks]
    CT-scan images often suffer from “salt and pepper” acquisition noise. To help
    removing such noise, you must implement a 9 by 9 median filter using the macro
    skeleton code given as Q1. You must use zero padding to process the pixels close to
    the image borders. Use your preferred sorting strategy. Make sure to comment
    accordingly your code. Use the (smaller) images provided in the assignment test
    image folder under Q1.
    CompSci 373 S1 C 2013 Assignment 3  代写
    Part 2 (Question 2): Linear stretching [50 marks]
    Q2_a [10 marks]
    CT-scan images do not always make the best use of the 16-bits range of pixel
    intensities. Here, you will use linear stretching to spread the pixel values better in the
    image.
    Use the macro skeleton code given as Q2_a to implement linear stretching as per
    lecture material. After computing the image histogram H(q) of image I, you will map
    the pixel value q min corresponding to the lowest image intensity to 0 and the pixel
    value q max corresponding to the highest image intensity to the maximum attainable
    value (255 for 8 bits greyscale image, 65535 for 16 bits greyscale image).
    Q2_b [15 marks]
    Spurious pixel intensities of the maximal value that may appear in the image hinder
    linear stretching attempted in Q2_a. Here, you will implement -β percentile based
    mapping by applying the 0.1 – 99.9 percentiles to the active image as per lecture IP1-
    Slide 33. You will use the skeleton code Q2_b provided.
    Q2_c [25 marks]
    The images given have a dominant peak in their histograms. Here, you will use the
    position of the dominant peak to align all image features. To do so, open (CTRL+O)
    two images to process in ImageJ (the skeleton code provided assumes that you have
    already open these two images in ImageJ).
    Use the provided skeleton code Q2_c and implement the “peak alignment” procedure.
    To do so, consider the two images loaded, say, images I1 and I2, and compute their
    respective histograms, H1(q) and H2(q). Transform I2 by linear stretching that maps
    q2 min (the pixel value corresponding to the lowest intensity in I2) to q1 min (the pixel
    value corresponding to the lowest intensity in I1) and q2 peak (the pixel value for the
    maximum count, H2(q2 peak ) = max {q} H2(q), in the histogram H2(q)) to q1 peak (the
    pixel value for the maximum count in the histogram H1(q)).
    Part 3 (Question 3): Image segmenting (iterative adaptive threshold) [35 marks]
    The images provided for Q2 and Q3 clearly have 4 regions: the region R 0 outside the
    plastic container with pixel value 0, the plastic container region R pc (lighter pixel
    values above some threshold, θ 2 ), the soil region R s (grey to light grey pixel values
    between the thresholds θ 1 and θ 2 ) and the soil pores, or soil void region R p (darker
    pixel values between 1 and θ 1 ). See slide 5 of the notes located here:
    http://www.cs.auckland.ac.nz/courses/compsci373s1c/assignments/2013/IP4ES_Imag
    e_Processing_for_Environmental_Science.pdf
    Use the macro skeleton code given as Q3 to segment greyscale images by modified
    adaptive threshold approach. Here, the algorithm presented in Lecture Notes IP02,
    Slides 32 to 36, is modified as follows. Given an image I, associated histogram H(q),
    and the maximum pixel value nBins allowed for image I, find the thresholds θ 1 and θ 2
    by performing the following operations:
    1. Initialize the thresholds: θ 1 = q peak /2 and θ 2 = (q max + q peak )/2 where q peak is the
    pixel value for the maximum histogram count H(q) and q max is the pixel value
    corresponding to the largest intensity in the image I.
    2. Update θ 1 and θ 2 until their values do not evolve or you reach the maximum
    number of iterations required (MAX_ITER = 20):
    Do (up to 20 times): following Lecture Notes IP2, Slide 35,
    a. Update θ 1 considering pixels of the region R p as object and pixels of the
    region R s as background.
    CompSci 373 S1 C 2013 Assignment 3  代写
    b. Update θ 2 considering pixels of the region R s as object and pixels R pc
    region as background.
    The obtained thresholds are to be used for forming the 8-bits segmentation map with
    grey coding of regions: White (code 255 or nBins) – the outside region R 0 ; light grey
    (code 192 or ¾ of nBins) – the container region R pc ; grey (code 128 or ½ of nBins) –
    the soil region R s , and dark-gray (code 64 or ¼ of nBins) – the soil void region R p .
    Notes:
    All the skeleton macros expect an image to be already open in ImageJ (there is an
    active image) and should operate only on the active image.
    You should not write code to ask the user to open an image.
    Image changes for each question MUST be done on the existing active image.
    You should not create a separate image containing your output.
    Submission: Submit your assignment as a zip file containing all ImageJ macros for
    Parts 1, 2 (Q2a, Q2b, Q2c), and 3 of this assignment.
    The electronic drop box will stay open 30 minutes after the deadline. Assignments
    will not be accepted after the electronic drop box is closed. Submitting well before the
    deadline is the best way to avoid last minute rush. Good luck!!
    Marking scheme
    CompSci 373 S1 C 2013 Assignment 3  代写
    Functions Marks Comments
    Q1  10 Your median filtering does not crash and returns the correctly
    transformed image.
    5 Zero-padding is done correctly.
    Q2_a  10 Your linear stretching does not crash and returns the correctly
    transformed image.
    Q2_b  10 Your percentile based mapping does not crash and returns the
    correctly transformed image.
    5 Adequate comments across Q1, Q2_a, Q2_b codes.
    Q2_c  5 Your peak alignment does not crash for random image input.
    15 It correctly modifies an image I2, i.e. it correctly aligns the I2
    peak pixel value to the I1 peak pixel value.
    5 Adequate comments across Q2_c code.
    Q3  5 Your program does not crash for random 8 bits image input
    5 Your program does not crash for random 16 bits image input
    20 It returns the correct segmentation map with pixel values giving
    greyscale codes of regions.
    5 Adequate comments across Q5 code