Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
dc34207
bd
EFando-lab May 21, 2025
0253008
Merge branch 'main' into merge
EFando-lab May 21, 2025
d4039de
added eye widget and dataclass
EFando-lab Jul 29, 2025
b4240a9
updated pictures and db
EFando-lab Jul 30, 2025
17170fe
Add mask analyzer functionality
elenahim Sep 3, 2025
d2e182a
layered image from main window
elenahim Sep 8, 2025
4a6664d
updated pictures and db
EFando-lab Sep 11, 2025
9eccd4e
версия 1
EFando-lab Sep 11, 2025
db349d4
в масштабе микронов
elenahim Sep 11, 2025
4cb36f8
версия 2
EFando-lab Sep 14, 2025
9cd1ec2
New inference pipeline
SergeyKezik Oct 20, 2025
fe1ce5f
.xml updates
SergeyKezik Oct 20, 2025
b2b1ef9
New pipeline
SergeyKezik Oct 20, 2025
5a600bb
версия 2
EFando-lab Oct 21, 2025
cc52218
Merge remote-tracking branch 'origin/ensemble' into merge
EFando-lab Oct 21, 2025
425d4cd
Disabled tiled-segmentation
SergeyKezik Dec 5, 2025
a8fb093
Add a temporal normalization fix
SergeyKezik Dec 10, 2025
3e067ab
версия 2
EFando-lab Dec 12, 2025
b1e7e6e
analysis
elenahim Jan 19, 2026
303b2ec
версия 2
EFando-lab Jan 19, 2026
b591c26
Merge branch 'ensemble' into merge
EFando-lab Jan 19, 2026
ff7cb6c
Merge remote-tracking branch 'origin/mask-analyzer' into merge
EFando-lab Jan 22, 2026
070215d
Updated mask generation pipeline
SergeyKezik May 19, 2026
a638f8f
Extend patient records for analyser measurements
Aug 9, 2026
be151c4
Add mask analyser plugin
Aug 9, 2026
24a61d9
Add ensemble inference pipeline
Aug 9, 2026
96b5ec3
Added catboost post-processing
SergeyKezik Aug 30, 2026
e030bb3
Forgot to add file
SergeyKezik Aug 30, 2026
7b28dfc
com
EFando-lab Sep 1, 2026
e423665
Merge remote-tracking branch 'origin/analyser-ensemble-db' into merge
EFando-lab Sep 1, 2026
c37ce21
delete vision
EFando-lab Sep 9, 2026
e945b42
revert mistakes
EFando-lab Sep 10, 2026
6b0829b
Add analyser __init__.py so package is bundled in exe build
Sep 11, 2026
e276c95
fix merge
EFando-lab Sep 11, 2026
df524eb
resize
Sep 11, 2026
43787ce
Merge branch 'analyser-ensemble-db' into merge
EFando-lab Sep 11, 2026
26b5b3d
fix rpe gap y-coordinate
Sep 11, 2026
d21d419
Merge branch 'analyser-ensemble-db' into merge
EFando-lab Sep 11, 2026
fd4a8cd
remove intersection
EFando-lab Sep 11, 2026
9fb9298
Fixed hardcoded resize
SergeyKezik Sep 14, 2026
50ecae8
Merge branch 'ensemble' into merge
SergeyKezik Sep 18, 2026
616bee4
added query_builder file
EFando-lab Sep 18, 2026
c6b669a
- 1 pandas
EFando-lab Sep 18, 2026
7b5274f
fixed config, adde lazy loading fo bd
EFando-lab Sep 18, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions .idea/material_theme_project_new.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Binary file added .vs/slnx.sqlite
Binary file not shown.
Binary file added .vs/vision-macula/v17/.wsuo
Binary file not shown.
12 changes: 12 additions & 0 deletions .vs/vision-macula/v17/DocumentLayout.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"Version": 1,
"WorkspaceRootPath": "C:\\Users\\Elena_Himbitskaya\\Desktop\\macula 12.08\\database\\vision-macula\\",
"Documents": [],
"DocumentGroupContainers": [
{
"Orientation": 0,
"VerticalTabListWidth": 256,
"DocumentGroups": []
}
]
}
Binary file added database_schema.sql
Binary file not shown.
6 changes: 4 additions & 2 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
git+https://github.com/BSMU-ITLab/vision.git@v0.31.2
#git+https://github.com/BSMU-ITLab/vision.git@v0.31.2
coloredlogs==15.0.1
cx_Freeze==7.2.5
cx_Logging==3.2.1
Expand All @@ -9,7 +9,7 @@ lazy_loader==0.4
lief==0.15.1
mpmath==1.3.0
networkx==3.4.2
numpy==2.1.3
numpy~=1.26.4
onnxruntime-gpu==1.20.0
opencv-python==4.10.0.84
packaging==24.2
Expand All @@ -27,3 +27,5 @@ shiboken6==6.8.0.2
sortedcontainers==2.4.0
sympy==1.13.3
tifffile==2024.9.20

pandas~=2.2.3
Binary file added src/.gitignore
Binary file not shown.
Binary file added src/bsmu/macula/app/database.db
Binary file not shown.
Empty file added src/bsmu/macula/app/example.db
Empty file.
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ plugins:
- bsmu.vision.plugins.visualizers.image.layered.LayeredImageVisualizerPlugin

- bsmu.vision.plugins.overlayers.image.ImageViewerOverlayerPlugin
# - bsmu.vision.plugins.overlayers.path.ImageViewerPathOverlayerPlugin
- bsmu.vision.plugins.overlayers.path.ImageViewerPathOverlayerPlugin
# - bsmu.vision.plugins.overlayers.intersection.ImageViewerIntersectionOverlayerPlugin

- bsmu.vision.plugins.writers.image.common.CommonImageFileWriterPlugin
Expand All @@ -21,11 +21,15 @@ plugins:
- bsmu.vision.plugins.tools.viewer.image.hand_tool.HandImageViewerToolPlugin
- bsmu.vision.plugins.tools.viewer.image.wsi_smart_brush.WsiSmartBrushImageViewerToolPlugin

# - bsmu.vision.plugins.walkers.file.MdiImageLayerFileWalkerPlugin
- bsmu.vision.plugins.walkers.file.MdiImageLayerFileWalkerPlugin

- bsmu.vision.plugins.layer_controller.MdiImageViewerLayerControllerPlugin
- bsmu.vision.plugins.layers_view.LayersTableViewPlugin

- bsmu.vision.plugins.task_storage_view.TaskStorageViewPlugin

- bsmu.macula.plugins.db.BD.BD
- bsmu.macula.plugins.gui.ensemble_segmenter_gui.EnsembleSegmenterGuiPlugin
- bsmu.macula.plugins.db.database_manager.DatabaseManager

- bsmu.macula.plugins.analyser.mask_analyser.MaskAnalyserPlugin
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
edit_picture: ':/dbicons/edit.png'
Original file line number Diff line number Diff line change
@@ -1,11 +1,19 @@
binary_ensemble_models:
name: {"class_1.onnx":1, "class_6.onnx":6, "class_9.onnx":9, "class_12.onnx":12, "class_14.onnx":14, "class_2.onnx":2, "class_11.onnx":2}
class_models: { 1: "Class_1.onnx", 3: "Class_3.onnx", 4: "Class_4.onnx",
5: "Class_5.onnx", 6: "Class_6.onnx", 9: "Class_9.onnx",
12: "Class_12.onnx", 13: "Class_13.onnx", 14: "Class_14.onnx",
15: "Class_15.onnx" }
boundary_model: "Class_bnd.onnx"
ped_model: "Class_4PED.onnx"
three_and_six_model: "Class_3and6.onnx"
tr_model: "Class_tr.onnx"
catboost_model: "catboost_model.onnx"
output_object_name: 'Tissue'
output_object_short_name: 'T'
preload: false
batch_size: 4
input_size: [1, 512, 512]
input_size: [1, 256, 512]
channels_axis: 0
channels_order: 'rgb'
normalize: true
normalize: false
mask_binarization_threshold: 0.5
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
classes:
- id: 1
name: "Drusen"
attributes:
- name: "Width"
description: "The width of the drusen object"
- name: "Height"
description: "The height of the drusen object"
- name: "Area"
description: "The area of the drusen object"

- id: 2
name: "Serous PED"
attributes:
- name: "Width"
description: "The width of the serous PED object"
- name: "Height"
description: "The height of the serous PED object"
- name: "Area"
description: "The area of the serous PED object"

- id: 4
name: "Hyperreflective Subretinal Fluid"
attributes:
- name: "Width"
description: "The width of the subretinal fluid object"
- name: "Height"
description: "The height of the subretinal fluid object"
- name: "Area"
description: "The area of the subretinal fluid object"

- id: 5
name: "Hyperreflective Intraretinal Fluid"
attributes:
- name: "Width"
description: "The width of the intraretinal fluid object"
- name: "Height"
description: "The height of the intraretinal fluid object"
- name: "Area"
description: "The area of the intraretinal fluid object"

- id: 10
name: "Fibrovascular PED"
attributes:
- name: "Width"
description: "The width of the fibrovascular PED object"
- name: "Height"
description: "The height of the fibrovascular PED object"
- name: "Area"
description: "The area of the fibrovascular PED object"

- id: 11
name: "Drusenoid PED"
attributes:
- name: "Width"
description: "The width of the drusenoid PED object"
- name: "Height"
description: "The height of the drusenoid PED object"
- name: "Area"
description: "The area of the drusenoid PED object"

- id: 16
name: "Hemorrhagic PED"
attributes:
- name: "Width"
description: "The width of the hemorrhagic PED object"
- name: "Height"
description: "The height of the hemorrhagic PED object"
- name: "Area"
description: "The area of the hemorrhagic PED object"
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
multi_segmenter_model:
name: "model_segmentation.onnx"
numclasses: 10
output_object_name: 'Tissue'
output_object_short_name: 'T'
preload: false
channels_axis: 0
channels_order: 'rgb'
normalize: true
mask_binarization_threshold: 0.5
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
classes:
- id: 1
name: "Drusen"
attributes:
- name: "Width"
description: "The width of the drusen object"
- name: "Height"
description: "The height of the drusen object"
- name: "Area"
description: "The area of the drusen object"

- id: 2
name: "Serous PED"
attributes:
- name: "Width"
description: "The width of the serous PED object"
- name: "Height"
description: "The height of the serous PED object"
- name: "Area"
description: "The area of the serous PED object"

- id: 4
name: "Hyperreflective Subretinal Fluid"
attributes:
- name: "Width"
description: "The width of the subretinal fluid object"
- name: "Height"
description: "The height of the subretinal fluid object"
- name: "Area"
description: "The area of the subretinal fluid object"

- id: 5
name: "Hyperreflective Intraretinal Fluid"
attributes:
- name: "Width"
description: "The width of the intraretinal fluid object"
- name: "Height"
description: "The height of the intraretinal fluid object"
- name: "Area"
description: "The area of the intraretinal fluid object"

- id: 10
name: "Fibrovascular PED"
attributes:
- name: "Width"
description: "The width of the fibrovascular PED object"
- name: "Height"
description: "The height of the fibrovascular PED object"
- name: "Area"
description: "The area of the fibrovascular PED object"

- id: 11
name: "Drusenoid PED"
attributes:
- name: "Width"
description: "The width of the drusenoid PED object"
- name: "Height"
description: "The height of the drusenoid PED object"
- name: "Area"
description: "The area of the drusenoid PED object"

- id: 16
name: "Hemorrhagic PED"
attributes:
- name: "Width"
description: "The width of the hemorrhagic PED object"
- name: "Height"
description: "The height of the hemorrhagic PED object"
- name: "Area"
description: "The area of the hemorrhagic PED object"
Original file line number Diff line number Diff line change
@@ -1,66 +1,61 @@
main_palette:
default_color: [ 190, 255, 0, 255 ]
row_by_name:
background: [ 0, 0, 0, 0, 0 ]
background: [ 0, 0, 0, 0, 0 ]

# Drusen
foreground: [ 1, 154, 205, 50, 255 ] # YellowGreen
foreground: [ 1, 154, 205, 50, 255 ] # YellowGreen

# Serous Pigment Epithelial Detachment (SPED)
sped: [ 2, 148, 0, 211, 255 ] # DarkViolet
# Sub-Retinal Pigment Epithelium Fluid (SRPEF)
sped: [ 2, 148, 0, 211, 255 ] # DarkViolet

# Intraretinal Fluid (IRF)
irf: [ 3, 0, 0, 255, 255 ] # Blue
irf: [ 3, 0, 0, 255, 255 ] # Blue

# Subretinal Hyperreflective Material (SHRM)
shrm: [ 4, 255, 255, 0, 255 ] # Yellow
shrm: [ 4, 255, 255, 0, 255 ] # Yellow

# Intraretinal Hyperreflective Foci (IHRF)
ihrf: [ 5, 184, 134, 11, 255 ] # DarkGoldenrod
ihrf: [ 5, 184, 134, 11, 255 ] # DarkGoldenrod

# Subretinal Fluid (SRF) / Neuroepithelial Detachment (NED)
srf: [ 6, 255, 0, 255, 255 ] # Fuchsia
srf: [ 6, 255, 0, 255, 255 ] # Fuchsia

# Sub-Bruch’s Fluid (SBF)
sbf: [ 7, 238, 130, 238, 255 ] # Violet
# Sub-Bruch’s Fluid
sbf: [ 7, 238, 130, 238, 255 ] # Violet

# Retinal Angiomatous Proliferation (RAP)
rap: [ 8, 255, 0, 0, 255 ] # Red
rap: [ 8, 255, 0, 0, 255 ] # Red

# Retinal Pigment Epithelium (RPE)
rpe: [ 9, 0, 255, 0, 255 ] # Lime
rpe: [ 9, 0, 255, 0, 255 ] # Lime

# Fibrovascular Pigment Epithelial Detachment (FVPED)
fvped: [ 10, 0, 255, 255, 255 ] # Aqua
class_10: [ 10, 0, 255, 255, 255 ] # Aqua

# Drusenoid Pigment Epithelial Detachment (Drusenoid PED)
drusenoid_ped: [ 11, 255, 160, 122, 255 ] # LightSalmon
drusenoid_ped: [ 11, 255, 160, 122, 255 ] # LightSalmon

# Ellipsoid Zone (EZ)
ez: [ 12, 85, 107, 47, 255 ] # DarkOliveGreen
ez: [ 12, 85, 107, 47, 255 ] # DarkOliveGreen

# Myoid Zone (MZ)
mz: [ 13, 60, 179, 113, 255 ] # MediumSeaGreen
mz: [ 13, 60, 179, 113, 255 ] # MediumSeaGreen

# Choroid
choroid: [ 14, 0, 139, 139, 255 ] # DarkCyan

# Photoreceptor Outer Segments (POS)
pos: [ 15, 72, 61, 139, 255 ] # DarkSlateBlue

# Hemorrhagic Pigment Epithelial Detachment (HPED)
hped: [ 16, 127, 255, 0, 255 ] # Chartreuse

# Sub-Retinal Pigment Epithelium Fluid (SRPEF)
srpef: [ 17, 143, 188, 139, 255 ] # DarkSeaGreen

class_18: [ 18, 139, 69, 19, 255 ] # SaddleBrown
class_19: [ 19, 0, 191, 255, 255 ] # DeepSkyBlue
class_20: [ 20, 65, 105, 225, 255 ] # RoyalBlue
class_21: [ 21, 255, 69, 0, 255 ] # OrangeRed
class_22: [ 22, 240, 230, 140, 255 ] # Khaki
class_23: [ 23, 219, 112, 147, 255 ] # PaleVioletRed
class_24: [ 24, 186, 85, 211, 255 ] # MediumOrchid
class_25: [ 25, 178, 34, 34, 255 ] # FireBrick
class_26: [ 26, 0, 0, 0, 255 ] # Black
class_255: [ 255, 50, 0, 50, 255 ] # Dark Purple
choroid: [ 14, 0, 139, 139, 255 ] # DarkCyan

# Photoreceptor Outer Segments
pos: [ 15, 72, 61, 139, 255 ] # DarkSlateBlue

class_16: [ 16, 127, 255, 0, 255 ] # Chartreuse
class_17: [ 17, 143, 188, 139, 255 ] # DarkSeaGreen
class_18: [ 18, 139, 69, 19, 255 ] # SaddleBrown
class_19: [ 19, 0, 191, 255, 255 ] # DeepSkyBlue
class_20: [ 20, 65, 105, 225, 255 ] # RoyalBlue
class_21: [ 21, 255, 69, 0, 255 ] # OrangeRed
class_22: [ 22, 240, 230, 140, 255 ] # Khaki
class_23: [ 23, 219, 112, 147, 255 ] # PaleVioletRed
class_24: [ 24, 186, 85, 211, 255 ] # MediumOrchid
class_25: [ 25, 178, 34, 34, 255 ] # FireBrick
class_26: [ 26, 0, 0, 0, 255 ] # Black
class_255: [ 255, 50, 0, 50, 255 ] # Dark Purple
Loading