Overview

CSCI 3397/PSYC 3317 is an advanced undergraduate-level class covering both digital image processing (week 1-4) and state-of-the-art deep learning (week 5-7) methods to analyze biomedial images. There are four real-world case studies in BIO, MED, PSYC, and NEURO with hands-on coding experience.

Schedule

Theme Date Topic Materials Assignments
Module I: Digital Image Processing (DIP)
DIP Basics
[Week 1-2]
Tue, Jan. 18 Lec. 1: Introduction
Overview, logistics
Coding: Github, Jupyterhub
final project (guideline)
Thu, Jan. 20 Lec. 2: Biomedical Image Modalities
Digital image, biomedical images
Coding: Imageio, Matplotlib
Tue, Jan. 25 Lec. 3: Image Operations
Transfer function (pixel-level), filtering (patch-level)
Coding: NumPy
lab1 due
Thu, Jan. 27 Lec. 4: Image Features
Edge, corner, texture
Coding: OpenCV
  • [T] Chap. 4.2.3, 5.3, 5.10
DIP+2D Images
[Week 3-4]
Tue, Feb. 1 Case I (BIO): Microscopy Image Analysis
Guest: Dr. Clarence Yapp (@HMS)
Task I: Image Preprocessing ps1 out (dip)
Thu, Feb. 3 Lec. 5: Image Registration
Image transformation, stitching
Coding: OpenCV
Task II: Image Registeration
  • [T] Chap. 10.2
lab2 due
Tue, Feb. 8 Lec. 6: Image Segmentation I
Thresholding, connected component
Coding: Scikit-image
Task III: Object detection
  • [T] Chap. 6
Thu, Feb. 10 Lec. 7: Morphology Analysis
Morphological operation
Descriptive statistics
Task IV: Object measurement lab3 due
Module II: Deep Learning (DL)
DL Basics
[Week 5-7]
Tue, Feb. 15 Lec. 8: Machine Learning Overview
ML: pipeline, tasks
Coding: Scikit-learn
Overview
Thu, Feb. 17 Lec. 9: Linear Regression
Layer: linear, polynomial feature
Optimization: least-square estimation
AlexNet: linear layer ps1 due (Wed)
lab4 due
Tue, Feb. 22 Lec. 10: Linear Classification
Layer: transfer function (sign, logistic)
AlexNet: loss layer
  • [E] Chap. 2.1
ps2 out (dip+image)
Thu, Feb. 24 Lec. 11: Optimization and PyTorch Basics
Optimization: stochastic gradient descent
Coding: PyTorch
AlexNet: optimization final project (team sign-up)
Tue, Mar. 1 Lec. 12: Multilayer Perceptron
Layer: non-linear
Optimization: backpropagation
AlexNet: non-linear layer
  • [E] Chap. 2.2
lab5 due
Thu, Mar. 3 Lec. 13: Convolutional Neural Networks
Layer: convolution, pooling
AlexNet: remaining layers lab6 due
ps2 due (Fri)
Tue, Mar. 8 No Class (Spring Break)
Thu, Mar. 10 No Class (Spring Break)
DL+2D Images
[Week 9-11]
Tue, Mar. 15 Case II (MED): Ultrasound Image Analysis
Guest: Prof. Bryan Rangers (@BC)
Overview and applications final project (check-in due)
Thu, Mar. 17 Lec. 14: Image Prediction
Modern practice: model
Application: Thyroid nodules classification final project (proposal due)
lab7 due (Fri)
Tue, Mar. 22 Lec. 15: Image Prediction II
Modern practice: loss, optimization (transfer learning), data
ps3 out (dl)
Thu, Mar. 24 Lec. 16: Image Segmentation
Task reduction: scalar -> map
Application: Fetal head segmentation, Amniotic fluid detection final project (check-in: data)
lab9 due (Fri)
Tue, Mar. 29 Lec. 17: Review and Object Detection
Building block, pipeline from scratch, hacking, problem formulation
Object detection
Deep learning review:
  • MLOD
  • train/test
Ethics Thu, Mar. 31 Lec. 18: Bioethics
Guest: Prof. Andrea Vicini, S.J.
Ethics in AI/Biomedical research
ps3 due (Fri)
lab10 due
DL+Videos
[Week 12-13]
Tue, Apr. 5 Case III: (PSYC) Human Video Analysis
Guest: Prof. Stefano Anzellotti (@BC)
Motion, Deep learning for PSYC
Overview and applications
Thu, Apr. 7 Lec. 19: Video Prediction
Motion estimation, action recognition
3D CNN and RNNs
Task I: Action recognition final project (check-in: model, Fri)
lab11 due
Tue, Apr. 12 Lec. 20: Object Tracking
Research presentation
Direct tracking
Task II: Eye tracking ps4 out (dl+image, Mon)
Thu, Apr. 14 No Class (Holy Thursday)
Tue, Apr. 19 No Class (Monday Schedule)
DL+3D Volumes
[Week 14-15]
Thu, Apr. 21 Case IV: (NEURO) Connectomics and 3D Instance Segmentation
Guest: Zudi Lin (PhD@Harvard)
Computer science task
  • raw data -> measurement
ps4 due (Fri)
Tue, Apr. 26 Hypothesis-driven vs Data-driven: a case study on mitochondria morphology
Guest: Dr. Snow Wang (@Harvard)
Neuroscience perspective
  • measurement -> new knowledge
final project (check-in: in-person with slide drafts)
Final Projects
[Week 15-17]
Thu, Apr. 28 Presentation I
final project (final slide due)
Tue, May. 3 Presentation II
Thu, May. 5 Presentation III
Tue, May. 17 final project (report/code due)


Staff & Office Hours


Name Office hours
Donglai Wei [Mon/Thu] 3-4pm @ 245 Beacon Rm. 528F
Jeff Wang [Tue] 5-6pm, [Thu] 10-11am @ 245 Beacon Rm. 122
Yufan Yang [Mon/Wed] 11am-noon @ 245 Beacon Rm. 122
  • Office hours will take place in person (or Zoom if needed).
  • Donglai will hold additional one-on-one AMA office hours Tue/Thu 4-5pm (15-min by appointment)


Course information

This is a challenging course and we are here to help you become a more-AI version of yourself. Please feel free to reach out if you need help in any form.

1. Get help (besides office hours)

  • Dropbox: The lecture pdfs will be uploaded to Dropbox (follow the link) and you can ask questions there by making comments on the slides directly.
  • Discord: For labs/psets/final projects, we will create dedicated channels for you to ask public questions. If you cannot make your post public (e.g., due to revealing problem set solutions), please create a room with instructors and TAs separately, or come to office hours. Please note, however, that the course staff cannot provide help debugging code, and there is no guarantee that they'll be able to answer last-minute homework questions before the deadline. We also appreciate it when you respond to questions from other students! If you have an important question that you would prefer to discuss over email, you may email the course staff, or you can contact the instructor by email directly.
  • Support: The university counseling services center provides a variety of programs and activities.
  • Accommodations for students with disabilities: If you are a student with a documented disability seeking reasonable accommodations in this course, please contact Kathy Duggan, (617) 552-8093, dugganka@bc.edu, at the Connors Family Learning Center regarding learning disabilities and ADHD, or Rory Stein, (617) 552-3470, steinr@bc.edu, in the Disability Services Office regarding all other types of disabilities, including temporary disabilities. Advance notice and appropriate documentation are required for accommodations.

2. Homework submission

All programming assignments are to be completed in Python on Jupyterhub, and then submitted on Canvas. Assignments will always be due at midnight (11:59 pm) on the due date.
  • Lab: There will be a lab approximately every week. We will go through some code in class and you need to finish up the exercises.
  • Pset: We will have a problem set for each of the first four themes. Afterwards, the pset is replaced by final project check-ins to keep you on track.
  • Final project: (guideline) In lieu of a final exam, we'll have a final project. This project will be completed in small groups during the last weeks of the class. The direction for this project is open-ended: you can either choose from a list of project ideas that we distribute, or you can propose a topic of your own. A short project proposal will be due approximately halfway through the course. During the final exam period, you'll turn in a final report and give a short presentation. You may use an ongoing research work for your final project, as long it meets the requirements.

3. Academic policy

  • Late policy: You'll have 10 late days each for labs and psets respectively over the course of the semester. Each time you use one, you may submit a homework assignment one day late without penalty. You are allowed to use multiple late days on a single assignment. For example, you can use all of your days at once to turn in one assignment a week late. You do not need to notify us when you use a late day; we'll deduct it automatically. If you run out of late days and still submit late, your assignment will be penalized at a rate of 10% per day. If you edit your assignment after the deadline, this will count as a late submission, and we'll use the revision time as the date of submission (after a short grace period of a few minutes). We will not provide additional late time, except under exceptional circumstances, and for these we'll require documentation (e.g., a doctor's note). Please note that the late days are provided to help you deal with minor setbacks, such as routine illness or injury, paper deadlines, interviews, and computer problems; these do not generally qualify for an additional extension.
  • Academic integrity: While you are encouraged to discuss homework assignments with other students, your programming work must be completed individually. You may not search for solutions online, or to use existing implementations of the algorithms in the assignments. Thus it is acceptable to learn from another student the general idea for writing program code to perform a particular task, or the technique for solving a mathematical problem, but unacceptable for two students to prepare their assignments together and submit what are essentially two copies of identical work. If you have any uncertainty about the application of this policy, please check with me. Failure to comply with these guidelines will be considered a violation of the University policies on academic integrity. Please make sure that you are familiar with these policies. We will use moss.pl tool to check each lab and pset for plagriasm detection.

4. Additional resource
Acknowledgements: This course is a less-CS version of CSCI 3343: Computer Vision with concrete biomedical image analysis applications. See the "Acknowledge" section in that class.