PyVisualFields 1.0.4__tar.gz → 2.0.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (21) hide show
  1. {PyVisualFields-1.0.4/src/PyVisualFields.egg-info → pyvisualfields-2.0.0}/PKG-INFO +83 -27
  2. PyVisualFields-1.0.4/PKG-INFO → pyvisualfields-2.0.0/README.md +63 -43
  3. {PyVisualFields-1.0.4 → pyvisualfields-2.0.0}/setup.py +10 -12
  4. pyvisualfields-2.0.0/src/PyVisualFields/Deviation_Analysis.py +452 -0
  5. pyvisualfields-2.0.0/src/PyVisualFields/PyGlaucoMetrics.py +563 -0
  6. pyvisualfields-2.0.0/src/PyVisualFields/__init__.py +1 -0
  7. {PyVisualFields-1.0.4 → pyvisualfields-2.0.0}/src/PyVisualFields/utils.py +118 -122
  8. pyvisualfields-2.0.0/src/PyVisualFields/vfprogression.py +1003 -0
  9. pyvisualfields-2.0.0/src/PyVisualFields/visualFields.py +1688 -0
  10. PyVisualFields-1.0.4/README.md → pyvisualfields-2.0.0/src/PyVisualFields.egg-info/PKG-INFO +99 -23
  11. {PyVisualFields-1.0.4 → pyvisualfields-2.0.0}/src/PyVisualFields.egg-info/SOURCES.txt +2 -0
  12. pyvisualfields-2.0.0/src/PyVisualFields.egg-info/requires.txt +4 -0
  13. PyVisualFields-1.0.4/src/PyVisualFields/__init__.py +0 -0
  14. PyVisualFields-1.0.4/src/PyVisualFields/vfprogression.py +0 -689
  15. PyVisualFields-1.0.4/src/PyVisualFields/visualFields.py +0 -1038
  16. PyVisualFields-1.0.4/src/PyVisualFields.egg-info/requires.txt +0 -8
  17. {PyVisualFields-1.0.4 → pyvisualfields-2.0.0}/license +0 -0
  18. {PyVisualFields-1.0.4 → pyvisualfields-2.0.0}/pyproject.toml +0 -0
  19. {PyVisualFields-1.0.4 → pyvisualfields-2.0.0}/setup.cfg +0 -0
  20. {PyVisualFields-1.0.4 → pyvisualfields-2.0.0}/src/PyVisualFields.egg-info/dependency_links.txt +0 -0
  21. {PyVisualFields-1.0.4 → pyvisualfields-2.0.0}/src/PyVisualFields.egg-info/top_level.txt +0 -0
@@ -1,15 +1,16 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: PyVisualFields
3
- Version: 1.0.4
3
+ Version: 2.0.0
4
4
  Summary: A python toolkit for visual field analysis
5
5
  Home-page: https://github.com/mohaEs/PyVisualField
6
- Author: Mohammad Eslami
6
+ Author: Mohammad Eslami, Bharath Erusalagandi, Mousa Moradi
7
7
  Author-email: Mohammad_eslami@meei.harvard.edu
8
8
  Project-URL: Bug Tracker, https://github.com/mohaEs/PyVisualField/issues
9
9
  Project-URL: Demo Normalization, https://github.com/mohaEs/PyVisualField/blob/main/demo_2_Deviation_Analysis.ipynb
10
10
  Project-URL: Demo Plotting, https://github.com/mohaEs/PyVisualField/blob/main/demo_3_Plotting.ipynb
11
- Project-URL: Demo Analysis, https://github.com/mohaEs/PyVisualField/blob/main/demo_4_Analysis.ipynb
11
+ Project-URL: Demo Prorgression Analysis, https://github.com/mohaEs/PyVisualField/blob/main/demo_4_Analysis.ipynb
12
12
  Project-URL: Demo Data, https://github.com/mohaEs/PyVisualField/blob/main/demo_1_Data.ipynb
13
+ Project-URL: Demo Glaucoma Detection, https://github.com/mohaEs/PyVisualField/blob/main/demo5_PyGlaucoMetrics.ipynb
13
14
  Project-URL: Harvard Ophthalmology AI LAB, https://ophai.hms.harvard.edu/
14
15
  Classifier: Programming Language :: Python :: 3
15
16
  Classifier: License :: OSI Approved :: MIT License
@@ -17,6 +18,21 @@ Classifier: Operating System :: OS Independent
17
18
  Requires-Python: >=3.6
18
19
  Description-Content-Type: text/markdown
19
20
  License-File: license
21
+ Requires-Dist: numpy
22
+ Requires-Dist: pandas
23
+ Requires-Dist: scipy
24
+ Requires-Dist: matplotlib
25
+ Dynamic: author
26
+ Dynamic: author-email
27
+ Dynamic: classifier
28
+ Dynamic: description
29
+ Dynamic: description-content-type
30
+ Dynamic: home-page
31
+ Dynamic: license-file
32
+ Dynamic: project-url
33
+ Dynamic: requires-dist
34
+ Dynamic: requires-python
35
+ Dynamic: summary
20
36
 
21
37
  # PyVisualFields
22
38
 
@@ -26,8 +42,30 @@ This packages includes functions for visuald field analysis and display.
26
42
 
27
43
  https://pypi.org/project/PyVisualFields/
28
44
 
29
- We use the rpy2 as the python wrapper to use R in Python. Then, we define and prepare the methods to call the methods and data implemented and introduced in R packages vfprogression (by Elze et al. [1]) and visualFields (by Marin-Granch et al. [2]). We write these functions in python language and demonstrate their functionalities in four categories of presenting data, plotting, scoring and progression analysis, and normalization analysis. For each category, we provide the examples, description of each function, associated requirements, and the output of that function in Jupyter notebooks.
45
+ Version 2 is R-independent while maintaining the original module organization. The modules are inspired by vfprogression (Elze et al. [1]) and visualFields (Marin-Franch et al. [2]).
46
+ Additionally, pyGlaucoMetric has been integrated to enable glaucoma classification based on visual field patterns.
30
47
 
48
+ These functions are implemented in Python, and their functionalities are demonstrated across four primary categories:
49
+ - Data Presentation
50
+ - Plotting
51
+ - Scoring and Progression Analysis
52
+ - Normalization Analysis
53
+ - Glaucoma Detection
54
+
55
+ For each category, we provide comprehensive Jupyter notebooks containing practical examples, detailed function descriptions, required inputs/dependencies, and expected outputs.
56
+
57
+ ## Citation
58
+ If you found this package impactful for your research, please cite the following article:
59
+ - Mohammad Eslami, Saber Kazeminasab, Vishal Sharma, Yangjiani Li, Mojtaba Fazli, Mengyu Wang, Nazlee Zebardast, Tobias Elze; PyVisualFields: A Python Package for Visual Field Analysis. Trans. Vis. Sci. Tech. 2023;12(2):6. https://doi.org/10.1167/tvst.12.2.6.
60
+
61
+ and of course the corresponding sub-package:
62
+ - vfprogression (by Elze et al. [1])
63
+ - visualFields (by Marin-Granch et al. [2])
64
+ - pyGlaucoMetrics (by Moradi et al. [3])
65
+
66
+ ## Installation:
67
+
68
+ > pip install PyVisualFields
31
69
 
32
70
  ## Demo jupyter notebooks
33
71
 
@@ -35,39 +73,33 @@ The list and description of all functions are available at [All_Functions](#list
35
73
  - Data [demo_1_Data.ipynb](demo_1_Data.ipynb)
36
74
  - Normalization and deviation analysis [demo_2_Deviation_Analysis.ipynb](demo_2_Deviation_Analysis.ipynb)
37
75
  - Plotting [demo_3_Plotting.ipynb](demo_3_Plotting.ipynb)
38
- - Analysis [demo_4_Analysis.ipynb](demo_4_Analysis.ipynb)
39
-
40
-
41
-
42
- ## Installation:
43
- This python package depends on
44
- - R
45
- - rpy2 python package
46
- - vfprogression R package
47
- - visualFields R package
48
-
49
- Make sure to install them before installing this PyVisualFields package:
76
+ - Progression Analysis [demo_4_Analysis.ipynb](demo_4_Analysis.ipynb)
77
+ - Glaucoma Detection [demo5_PyGlaucoMetrics.ipynb](demo5_PyGlaucoMetrics.ipynb) </br>
50
78
 
51
- - If you want to create a seperate conda environment and install everything from scratch follow this guidline: [readme_Installation_conda.md](https://github.com/mohaEs/PyVisualField/blob/main/readme_Installation_conda.md)
52
- or this video [installation_video](https://youtu.be/_L9YWrtlOhY)
79
+ __Notice:__ PyGlaucoMetric is also available as a seperatre PyPI package and GitHub repository (built upon PyVisualFields), which includes a graphical user interface (GUI) for progression analysis and glaucoma detection. Indeed PyVisualFields is designed as a developer-facing package library, while pyGlaucoMetric serves as an accessible GUI application implementing selected visual field analysis components.
80
+ https://github.com/Mousamoradi/PyGlaucoMetrics
53
81
 
54
- - If you have your preinstalled R or rpy2, follow the steps provided in our guideline: [readme_Installation.md](https://github.com/mohaEs/PyVisualField/blob/main/readme_Installation.md)
55
82
 
56
83
  ## references:
57
84
  [1] https://cran.r-project.org/web/packages/vfprogression/index.html </br>
58
- [2] https://cran.r-project.org/web/packages/visualFields/index.html
59
-
85
+ [2] https://cran.r-project.org/web/packages/visualFields/index.html </br>
86
+ [3] Moradi, Mousa, Saber Kazeminasab Hashemabad, Daniel M. Vu, Allison R. Soneru, Asahi Fujita, Mengyu Wang, Tobias Elze, Mohammad Eslami, and Nazlee Zebardast. 2025. "PyGlaucoMetrics: A Stacked Weight-Based Machine Learning Approach for Glaucoma Detection Using Visual Field Data" Medicina 61, no. 3: 541. https://doi.org/10.3390/medicina61030541
60
87
  </br>
61
88
 
62
- ![](./imgs/img.jpg)
63
-
64
89
 
65
90
  ## list of functions
66
- The list and description of all functions are as follow. They are all examined and introduced with examples in 4 different notebooks. It is important to mention that, based on the background R packages, the input VF dataframe needs to have columns with special column names. Make sure, to consider the data notebook. If further information is required, see the corresponding references: _vfprogression[1]_, _visualFields[2]_ </br>
91
+ The list and description of all functions are as follow. They are all examined and introduced with examples in 4 different notebooks. It is important to mention that, based on the background modules, the input VF dataframe needs to have columns with special column names. Make sure, to consider the data notebook. If further information is required, see the corresponding references: _vfprogression[1]_, _visualFields[2]_ </br>
67
92
  - Data [demo_1_Data.ipynb](demo_1_Data.ipynb)
68
93
  - Normalization and deviation analysis [demo_2_Deviation_Analysis.ipynb](demo_2_Deviation_Analysis.ipynb)
69
94
  - Plotting [demo_3_Plotting.ipynb](demo_3_Plotting.ipynb)
70
- - Analysis [demo_4_Analysis.ipynb](demo_4_Analysis.ipynb)
95
+ - Progression Analysis [demo_4_Analysis.ipynb](demo_4_Analysis.ipynb)
96
+ - Glaucoma Detection [demo5_PyGlaucoMetrics.ipynb](demo5_PyGlaucoMetrics.ipynb)
97
+ </br>
98
+
99
+ ### Notice:
100
+ Version 2 has been validated exclusively for the 24-2 format. Additionally, the system assumes all visual field measurements are provided in right eye (OD) format.
101
+
102
+ Functions based on _vfprogression_ package accept 24-2 or 30-2 visual field measurement while functions based on _visualFields_ also accept 10-2.
71
103
 
72
104
  </br>
73
105
 
@@ -120,5 +152,29 @@ The list and description of all functions are as follow. They are all examined a
120
152
  - visualFields.getglp() &nbsp; ----------- &nbsp; alias for getallvalues only to compute gi &nbsp; ----------- &nbsp; _visualFields[2]_
121
153
  - visualFields.get_info_normvals() &nbsp; ----------- &nbsp; Get all avialbale predefined normalization environments/settings &nbsp; ----------- &nbsp; _visualFields[2]_
122
154
  - visualFields.setnv() &nbsp; ----------- &nbsp; change/set normalization environment based on a predefined NV &nbsp; ----------- &nbsp; _visualFields[2]_
123
- - visualFields.nvgenerate &nbsp; ----------- &nbsp; generate a normalization environment based new data &nbsp; ----------- &nbsp; _visualFields[2]_
155
+ - visualFields.nvgenerate &nbsp; ----------- &nbsp; generate a normalization environment based new data &nbsp; ----------- &nbsp; _visualFields[2]_</br></br>
156
+
157
+ - PyGlaucoMetrics.Fn_HAP2 &nbsp; ----------- &nbsp; determine glaucoma cases based on criteria: HAP2 &nbsp; ----------- &nbsp; PyGlaucoMetrics[3]_
158
+ - PyGlaucoMetrics.Fn_UKGTS &nbsp; ----------- &nbsp; determine glaucoma cases based on criteria: UKGTS &nbsp; ----------- &nbsp; PyGlaucoMetrics[3]_
159
+ - PyGlaucoMetrics.Fn_LoGTS &nbsp; ----------- &nbsp; determine glaucoma cases based on criteria: LoGTS &nbsp; ----------- &nbsp; PyGlaucoMetrics[3]_
160
+ - PyGlaucoMetrics.Fn_Foster &nbsp; ----------- &nbsp; determine glaucoma cases based on criteria: Foster &nbsp; ----------- &nbsp; PyGlaucoMetrics[3]_
161
+ - PyGlaucoMetrics.Fn_Kangs &nbsp; ----------- &nbsp; determine glaucoma cases based on criteria: Kangs &nbsp; ----------- &nbsp; PyGlaucoMetrics[3]_
162
+
163
+
164
+
165
+ ## Snapshots
166
+
167
+
168
+ <img src="./imgs/1_(12).png" width="50%">
169
+ <img src="./imgs/1_(11).png" width="50%">
170
+ <img src="./imgs/1_(1).png" width="50%">
171
+ <img src="./imgs/1_(2).png" width="50%">
172
+ <img src="./imgs/1_(3).png" width="50%">
173
+ <img src="./imgs/1_(4).png" width="50%">
174
+ <img src="./imgs/1_(5).png" width="50%">
175
+ <img src="./imgs/1_(10).png" width="50%">
176
+ <img src="./imgs/1_(6).png" width="50%">
177
+ <img src="./imgs/1_(8).png" width="50%">
178
+ <img src="./imgs/1_(14).png" width="50%">
179
+ <img src="./imgs/1_(13).png" width="50%">
124
180
 
@@ -1,23 +1,3 @@
1
- Metadata-Version: 2.1
2
- Name: PyVisualFields
3
- Version: 1.0.4
4
- Summary: A python toolkit for visual field analysis
5
- Home-page: https://github.com/mohaEs/PyVisualField
6
- Author: Mohammad Eslami
7
- Author-email: Mohammad_eslami@meei.harvard.edu
8
- Project-URL: Bug Tracker, https://github.com/mohaEs/PyVisualField/issues
9
- Project-URL: Demo Normalization, https://github.com/mohaEs/PyVisualField/blob/main/demo_2_Deviation_Analysis.ipynb
10
- Project-URL: Demo Plotting, https://github.com/mohaEs/PyVisualField/blob/main/demo_3_Plotting.ipynb
11
- Project-URL: Demo Analysis, https://github.com/mohaEs/PyVisualField/blob/main/demo_4_Analysis.ipynb
12
- Project-URL: Demo Data, https://github.com/mohaEs/PyVisualField/blob/main/demo_1_Data.ipynb
13
- Project-URL: Harvard Ophthalmology AI LAB, https://ophai.hms.harvard.edu/
14
- Classifier: Programming Language :: Python :: 3
15
- Classifier: License :: OSI Approved :: MIT License
16
- Classifier: Operating System :: OS Independent
17
- Requires-Python: >=3.6
18
- Description-Content-Type: text/markdown
19
- License-File: license
20
-
21
1
  # PyVisualFields
22
2
 
23
3
  ## A python tool collection for analyzing visual fields
@@ -26,8 +6,30 @@ This packages includes functions for visuald field analysis and display.
26
6
 
27
7
  https://pypi.org/project/PyVisualFields/
28
8
 
29
- We use the rpy2 as the python wrapper to use R in Python. Then, we define and prepare the methods to call the methods and data implemented and introduced in R packages vfprogression (by Elze et al. [1]) and visualFields (by Marin-Granch et al. [2]). We write these functions in python language and demonstrate their functionalities in four categories of presenting data, plotting, scoring and progression analysis, and normalization analysis. For each category, we provide the examples, description of each function, associated requirements, and the output of that function in Jupyter notebooks.
9
+ Version 2 is R-independent while maintaining the original module organization. The modules are inspired by vfprogression (Elze et al. [1]) and visualFields (Marin-Franch et al. [2]).
10
+ Additionally, pyGlaucoMetric has been integrated to enable glaucoma classification based on visual field patterns.
11
+
12
+ These functions are implemented in Python, and their functionalities are demonstrated across four primary categories:
13
+ - Data Presentation
14
+ - Plotting
15
+ - Scoring and Progression Analysis
16
+ - Normalization Analysis
17
+ - Glaucoma Detection
18
+
19
+ For each category, we provide comprehensive Jupyter notebooks containing practical examples, detailed function descriptions, required inputs/dependencies, and expected outputs.
20
+
21
+ ## Citation
22
+ If you found this package impactful for your research, please cite the following article:
23
+ - Mohammad Eslami, Saber Kazeminasab, Vishal Sharma, Yangjiani Li, Mojtaba Fazli, Mengyu Wang, Nazlee Zebardast, Tobias Elze; PyVisualFields: A Python Package for Visual Field Analysis. Trans. Vis. Sci. Tech. 2023;12(2):6. https://doi.org/10.1167/tvst.12.2.6.
24
+
25
+ and of course the corresponding sub-package:
26
+ - vfprogression (by Elze et al. [1])
27
+ - visualFields (by Marin-Granch et al. [2])
28
+ - pyGlaucoMetrics (by Moradi et al. [3])
29
+
30
+ ## Installation:
30
31
 
32
+ > pip install PyVisualFields
31
33
 
32
34
  ## Demo jupyter notebooks
33
35
 
@@ -35,39 +37,33 @@ The list and description of all functions are available at [All_Functions](#list
35
37
  - Data [demo_1_Data.ipynb](demo_1_Data.ipynb)
36
38
  - Normalization and deviation analysis [demo_2_Deviation_Analysis.ipynb](demo_2_Deviation_Analysis.ipynb)
37
39
  - Plotting [demo_3_Plotting.ipynb](demo_3_Plotting.ipynb)
38
- - Analysis [demo_4_Analysis.ipynb](demo_4_Analysis.ipynb)
39
-
40
-
41
-
42
- ## Installation:
43
- This python package depends on
44
- - R
45
- - rpy2 python package
46
- - vfprogression R package
47
- - visualFields R package
48
-
49
- Make sure to install them before installing this PyVisualFields package:
40
+ - Progression Analysis [demo_4_Analysis.ipynb](demo_4_Analysis.ipynb)
41
+ - Glaucoma Detection [demo5_PyGlaucoMetrics.ipynb](demo5_PyGlaucoMetrics.ipynb) </br>
50
42
 
51
- - If you want to create a seperate conda environment and install everything from scratch follow this guidline: [readme_Installation_conda.md](https://github.com/mohaEs/PyVisualField/blob/main/readme_Installation_conda.md)
52
- or this video [installation_video](https://youtu.be/_L9YWrtlOhY)
43
+ __Notice:__ PyGlaucoMetric is also available as a seperatre PyPI package and GitHub repository (built upon PyVisualFields), which includes a graphical user interface (GUI) for progression analysis and glaucoma detection. Indeed PyVisualFields is designed as a developer-facing package library, while pyGlaucoMetric serves as an accessible GUI application implementing selected visual field analysis components.
44
+ https://github.com/Mousamoradi/PyGlaucoMetrics
53
45
 
54
- - If you have your preinstalled R or rpy2, follow the steps provided in our guideline: [readme_Installation.md](https://github.com/mohaEs/PyVisualField/blob/main/readme_Installation.md)
55
46
 
56
47
  ## references:
57
48
  [1] https://cran.r-project.org/web/packages/vfprogression/index.html </br>
58
- [2] https://cran.r-project.org/web/packages/visualFields/index.html
59
-
49
+ [2] https://cran.r-project.org/web/packages/visualFields/index.html </br>
50
+ [3] Moradi, Mousa, Saber Kazeminasab Hashemabad, Daniel M. Vu, Allison R. Soneru, Asahi Fujita, Mengyu Wang, Tobias Elze, Mohammad Eslami, and Nazlee Zebardast. 2025. "PyGlaucoMetrics: A Stacked Weight-Based Machine Learning Approach for Glaucoma Detection Using Visual Field Data" Medicina 61, no. 3: 541. https://doi.org/10.3390/medicina61030541
60
51
  </br>
61
52
 
62
- ![](./imgs/img.jpg)
63
-
64
53
 
65
54
  ## list of functions
66
- The list and description of all functions are as follow. They are all examined and introduced with examples in 4 different notebooks. It is important to mention that, based on the background R packages, the input VF dataframe needs to have columns with special column names. Make sure, to consider the data notebook. If further information is required, see the corresponding references: _vfprogression[1]_, _visualFields[2]_ </br>
55
+ The list and description of all functions are as follow. They are all examined and introduced with examples in 4 different notebooks. It is important to mention that, based on the background modules, the input VF dataframe needs to have columns with special column names. Make sure, to consider the data notebook. If further information is required, see the corresponding references: _vfprogression[1]_, _visualFields[2]_ </br>
67
56
  - Data [demo_1_Data.ipynb](demo_1_Data.ipynb)
68
57
  - Normalization and deviation analysis [demo_2_Deviation_Analysis.ipynb](demo_2_Deviation_Analysis.ipynb)
69
58
  - Plotting [demo_3_Plotting.ipynb](demo_3_Plotting.ipynb)
70
- - Analysis [demo_4_Analysis.ipynb](demo_4_Analysis.ipynb)
59
+ - Progression Analysis [demo_4_Analysis.ipynb](demo_4_Analysis.ipynb)
60
+ - Glaucoma Detection [demo5_PyGlaucoMetrics.ipynb](demo5_PyGlaucoMetrics.ipynb)
61
+ </br>
62
+
63
+ ### Notice:
64
+ Version 2 has been validated exclusively for the 24-2 format. Additionally, the system assumes all visual field measurements are provided in right eye (OD) format.
65
+
66
+ Functions based on _vfprogression_ package accept 24-2 or 30-2 visual field measurement while functions based on _visualFields_ also accept 10-2.
71
67
 
72
68
  </br>
73
69
 
@@ -120,5 +116,29 @@ The list and description of all functions are as follow. They are all examined a
120
116
  - visualFields.getglp() &nbsp; ----------- &nbsp; alias for getallvalues only to compute gi &nbsp; ----------- &nbsp; _visualFields[2]_
121
117
  - visualFields.get_info_normvals() &nbsp; ----------- &nbsp; Get all avialbale predefined normalization environments/settings &nbsp; ----------- &nbsp; _visualFields[2]_
122
118
  - visualFields.setnv() &nbsp; ----------- &nbsp; change/set normalization environment based on a predefined NV &nbsp; ----------- &nbsp; _visualFields[2]_
123
- - visualFields.nvgenerate &nbsp; ----------- &nbsp; generate a normalization environment based new data &nbsp; ----------- &nbsp; _visualFields[2]_
119
+ - visualFields.nvgenerate &nbsp; ----------- &nbsp; generate a normalization environment based new data &nbsp; ----------- &nbsp; _visualFields[2]_</br></br>
120
+
121
+ - PyGlaucoMetrics.Fn_HAP2 &nbsp; ----------- &nbsp; determine glaucoma cases based on criteria: HAP2 &nbsp; ----------- &nbsp; PyGlaucoMetrics[3]_
122
+ - PyGlaucoMetrics.Fn_UKGTS &nbsp; ----------- &nbsp; determine glaucoma cases based on criteria: UKGTS &nbsp; ----------- &nbsp; PyGlaucoMetrics[3]_
123
+ - PyGlaucoMetrics.Fn_LoGTS &nbsp; ----------- &nbsp; determine glaucoma cases based on criteria: LoGTS &nbsp; ----------- &nbsp; PyGlaucoMetrics[3]_
124
+ - PyGlaucoMetrics.Fn_Foster &nbsp; ----------- &nbsp; determine glaucoma cases based on criteria: Foster &nbsp; ----------- &nbsp; PyGlaucoMetrics[3]_
125
+ - PyGlaucoMetrics.Fn_Kangs &nbsp; ----------- &nbsp; determine glaucoma cases based on criteria: Kangs &nbsp; ----------- &nbsp; PyGlaucoMetrics[3]_
126
+
127
+
128
+
129
+ ## Snapshots
130
+
131
+
132
+ <img src="./imgs/1_(12).png" width="50%">
133
+ <img src="./imgs/1_(11).png" width="50%">
134
+ <img src="./imgs/1_(1).png" width="50%">
135
+ <img src="./imgs/1_(2).png" width="50%">
136
+ <img src="./imgs/1_(3).png" width="50%">
137
+ <img src="./imgs/1_(4).png" width="50%">
138
+ <img src="./imgs/1_(5).png" width="50%">
139
+ <img src="./imgs/1_(10).png" width="50%">
140
+ <img src="./imgs/1_(6).png" width="50%">
141
+ <img src="./imgs/1_(8).png" width="50%">
142
+ <img src="./imgs/1_(14).png" width="50%">
143
+ <img src="./imgs/1_(13).png" width="50%">
124
144
 
@@ -5,8 +5,8 @@ with open("README.md", "r", encoding="utf-8") as fh:
5
5
 
6
6
  setuptools.setup(
7
7
  name="PyVisualFields",
8
- version="1.0.4",
9
- author="Mohammad Eslami",
8
+ version="2.0.0",
9
+ author="Mohammad Eslami, Bharath Erusalagandi, Mousa Moradi",
10
10
  author_email="Mohammad_eslami@meei.harvard.edu",
11
11
  description="A python toolkit for visual field analysis",
12
12
  long_description=long_description,
@@ -16,8 +16,9 @@ setuptools.setup(
16
16
  "Bug Tracker": "https://github.com/mohaEs/PyVisualField/issues",
17
17
  "Demo Normalization": "https://github.com/mohaEs/PyVisualField/blob/main/demo_2_Deviation_Analysis.ipynb",
18
18
  "Demo Plotting": "https://github.com/mohaEs/PyVisualField/blob/main/demo_3_Plotting.ipynb",
19
- "Demo Analysis": "https://github.com/mohaEs/PyVisualField/blob/main/demo_4_Analysis.ipynb",
19
+ "Demo Prorgression Analysis": "https://github.com/mohaEs/PyVisualField/blob/main/demo_4_Analysis.ipynb",
20
20
  "Demo Data": "https://github.com/mohaEs/PyVisualField/blob/main/demo_1_Data.ipynb",
21
+ "Demo Glaucoma Detection": "https://github.com/mohaEs/PyVisualField/blob/main/demo5_PyGlaucoMetrics.ipynb",
21
22
  "Harvard Ophthalmology AI LAB": "https://ophai.hms.harvard.edu/"
22
23
  },
23
24
  classifiers=[
@@ -27,14 +28,11 @@ setuptools.setup(
27
28
  ],
28
29
  package_dir={"": "src"},
29
30
  packages=setuptools.find_packages(where="src"),
30
- install_requires = ["tzlocal >= 3.0",
31
- "tzlocal >= 3.0",
32
- "scikit-image >= 0.18.1",
33
- "pandas >= 1.2.4",
34
- "PyPDF2 >= 1.26.0",
35
- "PyMuPDF >= 1.19.1",
36
- "reportlab >= 3.6.2",
37
- "matplotlib >= 3.3.4" ],
31
+ install_requires = [
32
+ "numpy",
33
+ "pandas",
34
+ "scipy",
35
+ "matplotlib",
36
+ ],
38
37
  python_requires=">=3.6",
39
38
  )
40
-