程序代写案例-COMP5424

欢迎使用51辅导,51作业君孵化低价透明的学长辅导平台,服务保持优质,平均费用压低50%以上! 51fudao.top
IT in Biomedicine Lab
(COMP5424)
2. MIC Module Development
2.1 Summary Information
• This assignment is worth 20% of your final assessment.
• The mark of "COMP5424 Assignment: Medical Image Computing Module Develop-
ment" will be given depends on the file submitted on Canvas:
– Canvas Submission [Due Date] 23:59 Sunday of Week 12 (2021-05-30).
• See Sec. 2.3 for details regarding "Skeleton Code and Sample Data".
• Submission Deliverables
– You are requested to create a zip file of all deliverables, including the source code, the
outputted images, and the appendix report. Your assignment will only be marked if all
deliverables can be accessed from the Canvas System, and the solution code is runnable
from a Slicer with version 4.10.2.
– Your copy should include an Assignment Coversheet, which can be downloaded from
HERE.
2.2 General Marking Policy
• Late Submission Policy: For the late submission cases, penalties will be assigned according
to the university wide late penalties for assignment Clause 7A of the Assessment Procedures.
• Special Consideration and Arrangements: While you are studying, there may be circum-
stances or essential commitments that impact your academic performance. Our special
consideration and special arrangements process is there to support you in these situations.
More information on how to lodge the special consideration application, can be found from
this webpage.
2.3 Skeleton Code and Sample Data 3
2.3 Skeleton Code and Sample Data
Skeleton code and sample data can be downloaded from the assignment page on Canvas. It is very
important for you to download Skeleton Code first. The connection setup between Python and
3D slicer has been completed within the Skeleton Code already for your convenience. Within the
Skeleton Code, there exist some empty blocks marked with comments (between #Add your code
below# and #Add your code above#), where you should fill in with your assignment solution code.
Note: you should not modify any other completed parts of the Skeleton Code.
2.4 Introduction
Medical image computing (MIC) is an interdisciplinary field at the intersection of computer science,
information engineering, electrical engineering, physics, mathematics and medicine. This field
develops computational and mathematical methods for solving problems pertaining to medical
images and their use for biomedical research and clinical care. Within the MIC domain, there
are three essential medial image analysis techniques, namely, medical image enhancement (MIE),
medical image segmentation (MIS) and medical image registration (MIR). The fundamental ideas
and practices, regarding MIE, MIS and MIR, have been delivered and deployed in this unit of study,
from week 5 to week 7.
2.5 COMP5424 Assignment: Medical Image Computing Module Development
In this assignment, you will build a fundamental MIC platform to perform three individual tasks on
the sample data provided and observe the effects achieved by MIE, MIS and MIR respectively. To
complete this assignment, you are expected to use 3D slicer with the programming skills learnt from
this course, based on the skeleton code and sample data provided on Canvas.
R For programming related tasks (Task A and Task B), you are suggested to remove all irrelevant
module loading paths before you start to do these tasks. Additionally, please wait for your code
to be processed, your Slice interface may be freezed as it may take some time to run your MIE
and MIS code completely.
2.5.1 Task A: Medical Image Enhancement (MIE)
R Key Information:
• Sample Data: Task A / MRHead.nrrd
• Skeleton Code: Task A / MedicalImageEnhancement.py
• Coding Deliverable: Completed solution code (MedicalImageEnhancement.py)
• Report Deliverable: Corresponding section in the appendix report, including the demon-
stration of the results of 3D convolution performed with the (1) smoothing, (2) sharpening
and (3) edge detection filters.
You are expected to program an image filtering algorithm with Python, which performs a 3D
convolution on the 3D volume MRHead.nrrd. The filters to be used, include the smoothing (already
pre-set in the code given), sharpening and edge detection filters. Please refer to the lecture slides for
the details of the image filtering algorithm.
1. Load data MRHead.nrrd to Slicer.
4 Assignment 2. MIC Module Development
2. Import the source code ‘MedicalImageEnhancement.py’ to Slicer. Then restart Slicer, and find
this ‘Task A - MIE’ module in ‘Assignment’.
3. Open source code ‘MedicalImageEnhancement.py’ and implement your solution. Some
instructions and tips are provided in the source code.
4. After modifying your code, save it and then click on the ‘Reload’ button to reload the module,
so you don’t need to restart Slicer.
5. Change the layout to displace Red Slice only. Superimpose the MRHead onto MRHead_filtered,
and then change the opacity to see the difference between them.
2.5 COMP5424 Assignment: Medical Image Computing Module Development 5
2.5.2 Task B: Medical Image Segmentation (MIS)
R Key Information:
• Sample Data: Task B / MRBrainTumor.nrrd
• Skeleton Code: Task B / MedicalImageSegmentation.py
• Coding Deliverable: Completed solution code (MedicalImageSegmentation.py)
• Report Deliverable: Corresponding section in the appendix report, including (1) the
demonstration of the 3D segmentation result of the tumor, (2) the demonstration of
the experiments on different global and local parameters combinations and (3) the best
global and local parameters found for this segmentation task.
Region-growing algorithm can perform medical image segmentation task via delineating ROIs
iteratively. Recall the dual-checking 2D region growing algorithm from the tutorial content of week
6, this task requires you to further extend the dual-checking region growing algorithm to the 3D
version with Python. Skeleton code and sample data for this task can be found in the files provided.
1. Load ‘MRBrainTumor.nrrd’ from the files provided. Use ’Editor’ module to draw a single dot
in the slice which tumor has a clear boundary.
2. Import the source code ‘MedicalImageSegmentation.py’ to Slicer. Then restart Slicer, and
find this ‘Task B - MIS’ module in ‘Assignment’.
3. Open source code ‘MedicalImageSegmentation.py’ and implement your solution. Some
instructions and tips are provided in the source code.
4. After modifying your code, save it and then click on the ‘Reload’ button to reload the module,
so you don’t need to restart Slicer.
5. Click ‘Apply’ to see the results. Tune the global and local parameters to find the best
segmentation result.
6 Assignment 2. MIC Module Development
Here are some hints for you to complete task2:
• Try to run one iteration first by adding a break in the ‘grow_from_seed’ function to stop the
algorithm at certain iteration to check if the result is expected.
• If you want to start the assignment based on Week 6’s solution, you should think about how to
redesign the ‘find_new_voxels()’ function to make it more efficient. Depending on how you
implement ‘find_new_voxels()’ function, the time spent in running the algorithm for the whole
3D brain image will be different and you may experience a slicer ‘no responding’ period if the
algorithm is implemented inefficiently.
2.5 COMP5424 Assignment: Medical Image Computing Module Development 7
2.5.3 Task C: Medical Image Registration (MIR)
R Key Information:
• Sample Data: Task C / SubjectA_T1, SubjectA_T2, SubjectB_T1, SubjectB_T2.
• Output Deliverable: Generated solution NRRD image (SubjectB_T2_registered.nrrd)
• Report Deliverable: Corresponding section in the appendix report, including (1) the
demonstration of the registered brain images using at least two clearly-explained reg-
istration paths and (2) the demonstration of the registration results (by overlaying Sub-
jectB_T2_registered.nrrd on SubjectA_T1).
Rigid, affine and non-linear registrations are the most commonly-adopted approaches within the
MIR domain. This task requires you to use rigid and nonlinear registration methods to perform
two-step registrations on two structural MRI datasets acquired on two different subjects (Subject A
and Subject B). Each subject would contain two brain images, one T1 brain image (‘SubjectA_T1’
and ‘SubjectB_T1’) and one T2 brain image (‘SubjectA_T2’ and ‘SubjectB_T2’). This task does not
involve python programming. The demonstration of the data is shown below:
Your task is to treat ‘SubjectA_T1’ as your registration target and register ‘SubjectB_T2’ to
the same space of ‘SubjectA_T1’. To achieve that, you should :
• Carry out the intra-subject registration (same subject, different modalities) using affine regis-
tration;
8 Assignment 2. MIC Module Development
• Carry out the inter-subject registration (different subjects, same modality) using nonlinear
registration.
• Remember to save the intermediate registration result, for your convenience.
The built-in module required for completing this task is "General Registration (BRAINS)" in
Slicer. The recommended settings of parameters for the affine and non-linear registrations, are given
in the images below (please zoom in to gain a clearer view), meanwhile you are also encouraged to
explore your own parameter settings to achieve a better registration result.
You should save your output image as ‘SubjectB_T2_registered.nrrd’.
Acceptable registration results will align the bio-landmarks in the brains among different subject-
s/modalities. One obvious bio-landmark, in this case, is the ventricle, which is marked in red in
2.5 COMP5424 Assignment: Medical Image Computing Module Development 9
each subject in the sample registration outputs below (the sub-figures are ’SubjectA_T1’ and three
registration results achieved on the same space of ’SubjectA_T1’) :
Hints: There could be more than one registration path available, and your task is to find the most
appropriate path, which obtains the best registration result. You could check your registration results
by overlaying the output on the target image. Acceptable registration result will align the ventricle in
both images, as shown below (which is also shown as the bottom-right sub-figure in the previous
image).
10 Assignment 2. MIC Module Development
2.5.4 Appendix Report
You are required to write a appendix report for all corresponding sections in this assignment. Please
refer to the Key Information - Report Deliverable in each task above to double-check the contents
to be included in your appendix report. You should use the following formatting for the appendix
report:
1. Number of pages - no page limitation.
2. Captions - Captions are requested for any figures presented in the report.
3. Page Formatting:
• page size: A4;
• line space: 1.5 lines;
• font size: 12;
• font name: Times New Roman;
• margin: 2.5cm in all direction

欢迎咨询51作业君
51作业君

Email:51zuoyejun

@gmail.com

添加客服微信: abby12468