summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVineet Kumar <git@vineetk.net>2026-04-22 09:44:03 -0400
committerVineet Kumar <git@vineetk.net>2026-04-22 09:44:03 -0400
commit8aa7de25b342c5fbe2f85dcf68918eb5614b92c8 (patch)
treecc3033145162e8fcfb301e33260afc56bf1fec0a
parent9b8cf40297e4e0bee41e3a7697bb063c04ae7335 (diff)
add original proposal presentation and move into assignment/HEADmaster
-rw-r--r--.gitignore5
-rw-r--r--assignment/proposal.org93
-rw-r--r--assignment/proposal.pdfbin0 -> 113957 bytes
-rw-r--r--assignment/report.org (renamed from report.org)0
-rw-r--r--assignment/report.pdfbin0 -> 1004606 bytes
-rw-r--r--assignment/retina_class0.jpgbin0 -> 55083 bytes
-rw-r--r--assignment/retina_class4.jpgbin0 -> 37113 bytes
7 files changed, 95 insertions, 3 deletions
diff --git a/.gitignore b/.gitignore
index e191bcc..4425543 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,6 +4,5 @@ guix-root
4guix-root-1-link 4guix-root-1-link
5*.pth 5*.pth
6venv/ 6venv/
7report.tex 7*.tex
8report.pdf 8*.bbl
9report.bbl
diff --git a/assignment/proposal.org b/assignment/proposal.org
new file mode 100644
index 0000000..727418a
--- /dev/null
+++ b/assignment/proposal.org
@@ -0,0 +1,93 @@
1#+TITLE: Diabetic Retinopathy Classification
2#+AUTHOR: Vineet Kumar
3#+DATE:
4#+OPTIONS: H:2 num:t toc:t \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
5#+OPTIONS: TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc
6#+INFOJS_OPT: view:nil toc:nil ltoc:t mouse:underline buttons:0 path:https://orgmode.org/org-info.js
7#+EXPORT_SELECT_TAGS: export
8#+EXPORT_EXCLUDE_TAGS: noexport
9#+HTML_LINK_UP:
10#+HTML_LINK_HOME:
11#+startup: beamer
12#+LaTeX_CLASS: beamer
13#+LaTeX_CLASS_OPTIONS: [aspectratio=169,bigger]
14#+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %4BEAMER_col(Col) %10BEAMER_extra(Extra)
15#+BEAMER_THEME: metropolis
16#+latex_header: \usepackage{fontspec}
17#+latex_header: \setsansfont{Comic Neue}
18
19* Objective
20** Objective
21- Classifying diabetic retinopathy into 5 classes
22 1. Healthy retina
23 2. Mild nonproliferative diabetic retinopathy
24 3. Moderate nonproliferative diabetic retinopathy
25 4. Severe nonproliferative diabetic retinopathy
26 5. Proliferative diabetic retinopathy
27- Input would be a picture of a retina (like those from an optometrist
28 when they scan your eye)
29
30* Materials and Method
31** Materials
32- Using a dataset from Kaggle ("Diabetic Retinopathy Arranged") that
33 has all the labelled images:
34 - There is a class imbalance (73% / 25k images are of healthy
35 retinas), would be accounted for with the loss function when
36 training
37 - Class 0: 25k images
38 - Class 1: 2.4k images
39 - Class 2: 5.2k images
40 - Class 3: 800 images
41 - Class 4: 700 images
42
43** Image Examples
44*** figure
45:PROPERTIES:
46:BEAMER_col: 0.5
47:END:
48#+ATTR_LATEX: :width 0.8\textheight
49#+CAPTION: Class 0: Healthy retina
50[[./retina_class0.jpg]]
51
52*** figure 2
53:PROPERTIES:
54:BEAMER_col: 0.5
55:END:
56#+ATTR_LATEX: :width 0.8\textheight
57#+CAPTION: Class 4: Proliferative diabetic retinopathy
58[[./retina_class4.jpg]]
59
60
61** Method
62- Training a CNN model for classification
63 - There exists a few that can be finetuned on a dataset such as
64 Microsoft's ResNet-50 (2015) and Google's EfficientNet-B0 (2019)
65 - I would be comparing with both models
66- Preprocessing
67 - Resize images to 224x224 (input size that EfficientNet uses)
68 - Apply CLAHE (Contrast Limited Adaptive Histogram Equalization) on
69 luminosity channel of LAB
70 - there is more usable information for a retina in the luminosity
71 channel than the chrominance (colour) channel
72 - I would also compare without CLAHE to see how that affects
73 metrics
74 - Normalize with ImageNet's mean and std
75 - Perform random flips and rotations of the images so that the model
76 can generalize across orientations
77
78** Metrics
79*** Primary
80- Weighted F1-score (to account for class imbalance)
81*** Additional
82- Per-class precision and recall
83- Confusion matrix
84
85* Timeline
86** Timeline
87- Day 1-3: dataset setup, make preprocessing pipeline, perform baseline
88 training on both models
89- Day 4-6: evaluate and compare outputs, tune weighted loss function,
90 maybe train with additional epochs for better metrics (depending on
91 how long it takes)
92- Day 7-9: gather final metrics, start preparing final report and
93 presentation slides
diff --git a/assignment/proposal.pdf b/assignment/proposal.pdf
new file mode 100644
index 0000000..d922705
--- /dev/null
+++ b/assignment/proposal.pdf
Binary files differ
diff --git a/report.org b/assignment/report.org
index 044e888..044e888 100644
--- a/report.org
+++ b/assignment/report.org
diff --git a/assignment/report.pdf b/assignment/report.pdf
new file mode 100644
index 0000000..8ace579
--- /dev/null
+++ b/assignment/report.pdf
Binary files differ
diff --git a/assignment/retina_class0.jpg b/assignment/retina_class0.jpg
new file mode 100644
index 0000000..3f82c4f
--- /dev/null
+++ b/assignment/retina_class0.jpg
Binary files differ
diff --git a/assignment/retina_class4.jpg b/assignment/retina_class4.jpg
new file mode 100644
index 0000000..b902aeb
--- /dev/null
+++ b/assignment/retina_class4.jpg
Binary files differ