-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTask9.py
2152 lines (1986 loc) · 107 KB
/
Task9.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
from PyQt5 import QtCore, QtGui, QtWidgets
from re import T
import sys
import os
from turtle import clear, width
import numpy as np
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtCore import Qt, QRectF
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
import pydicom
from tkinter import W, filedialog
from PIL import ImageQt
import PIL
from PyQt5 import QtCore, QtGui, QtWidgets
import math
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
import random
from matplotlib.widgets import RectangleSelector
from mplwidget import MplWidget
from skimage.transform import radon, rescale, rotate,iradon
from phantominator import shepp_logan
class Ui_DicomViewer(object):
def setupUi(self, DicomViewer):
DicomViewer.setObjectName("DicomViewer")
DicomViewer.resize(1036, 990)
self.centralwidget = QtWidgets.QWidget(DicomViewer)
self.centralwidget.setObjectName("centralwidget")
self.gridLayout_14 = QtWidgets.QGridLayout(self.centralwidget)
self.gridLayout_14.setObjectName("gridLayout_14")
self.Fourier = QtWidgets.QTabWidget(self.centralwidget)
self.Fourier.setObjectName("Fourier")
self.tab_3 = QtWidgets.QWidget()
self.tab_3.setObjectName("tab_3")
self.gridLayout_5 = QtWidgets.QGridLayout(self.tab_3)
self.gridLayout_5.setObjectName("gridLayout_5")
self.gridLayout_4 = QtWidgets.QGridLayout()
self.gridLayout_4.setObjectName("gridLayout_4")
self.verticalLayout_5 = QtWidgets.QVBoxLayout()
self.verticalLayout_5.setObjectName("verticalLayout_5")
self.label_3 = QtWidgets.QLabel(self.tab_3)
font = QtGui.QFont()
font.setPointSize(11)
font.setBold(True)
font.setWeight(75)
self.label_3.setFont(font)
self.label_3.setAlignment(QtCore.Qt.AlignCenter)
self.label_3.setObjectName("label_3")
self.verticalLayout_5.addWidget(self.label_3)
self.splitter_3 = QtWidgets.QSplitter(self.tab_3)
self.splitter_3.setOrientation(QtCore.Qt.Vertical)
self.splitter_3.setObjectName("splitter_3")
self.information = QtWidgets.QTextBrowser(self.splitter_3)
self.information.setObjectName("information")
self.verticalLayout_5.addWidget(self.splitter_3)
self.gridLayout_4.addLayout(self.verticalLayout_5, 0, 0, 1, 1)
self.verticalLayout_6 = QtWidgets.QVBoxLayout()
self.verticalLayout_6.setObjectName("verticalLayout_6")
self.Label_ImageView_3 = QtWidgets.QLabel(self.tab_3)
font = QtGui.QFont()
font.setPointSize(11)
font.setBold(True)
font.setWeight(75)
self.Label_ImageView_3.setFont(font)
self.Label_ImageView_3.setAlignment(QtCore.Qt.AlignCenter)
self.Label_ImageView_3.setObjectName("Label_ImageView_3")
self.verticalLayout_6.addWidget(self.Label_ImageView_3)
self.ImageView_3 = QtWidgets.QGraphicsView(self.tab_3)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.ImageView_3.sizePolicy().hasHeightForWidth())
self.ImageView_3.setSizePolicy(sizePolicy)
self.ImageView_3.setObjectName("ImageView_3")
self.verticalLayout_6.addWidget(self.ImageView_3)
self.gridLayout_4.addLayout(self.verticalLayout_6, 0, 1, 1, 1)
self.gridLayout_5.addLayout(self.gridLayout_4, 0, 0, 1, 1)
self.Fourier.addTab(self.tab_3, "")
self.tab_4 = QtWidgets.QWidget()
self.tab_4.setObjectName("tab_4")
self.gridLayout_2 = QtWidgets.QGridLayout(self.tab_4)
self.gridLayout_2.setObjectName("gridLayout_2")
self.label = QtWidgets.QLabel(self.tab_4)
self.label.setObjectName("label")
self.gridLayout_2.addWidget(self.label, 0, 0, 1, 1)
self.verticalLayout_9 = QtWidgets.QVBoxLayout()
self.verticalLayout_9.setObjectName("verticalLayout_9")
self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
self.verticalLayout_7 = QtWidgets.QVBoxLayout()
self.verticalLayout_7.setObjectName("verticalLayout_7")
self.label_NearestNeighbor = QtWidgets.QLabel(self.tab_4)
font = QtGui.QFont()
font.setPointSize(11)
font.setBold(True)
font.setWeight(75)
self.label_NearestNeighbor.setFont(font)
self.label_NearestNeighbor.setAlignment(QtCore.Qt.AlignCenter)
self.label_NearestNeighbor.setObjectName("label_NearestNeighbor")
self.verticalLayout_7.addWidget(self.label_NearestNeighbor)
self.NearestNeighbor = QtWidgets.QGraphicsView(self.tab_4)
self.NearestNeighbor.setObjectName("NearestNeighbor")
self.verticalLayout_7.addWidget(self.NearestNeighbor)
self.horizontalLayout_2.addLayout(self.verticalLayout_7)
spacerItem = QtWidgets.QSpacerItem(38, 58, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
self.horizontalLayout_2.addItem(spacerItem)
self.verticalLayout_8 = QtWidgets.QVBoxLayout()
self.verticalLayout_8.setObjectName("verticalLayout_8")
self.label_LinearInterpolation = QtWidgets.QLabel(self.tab_4)
font = QtGui.QFont()
font.setPointSize(11)
font.setBold(True)
font.setWeight(75)
self.label_LinearInterpolation.setFont(font)
self.label_LinearInterpolation.setAlignment(QtCore.Qt.AlignCenter)
self.label_LinearInterpolation.setObjectName("label_LinearInterpolation")
self.verticalLayout_8.addWidget(self.label_LinearInterpolation)
self.LinearInterpolation = QtWidgets.QGraphicsView(self.tab_4)
self.LinearInterpolation.setObjectName("LinearInterpolation")
self.verticalLayout_8.addWidget(self.LinearInterpolation)
self.horizontalLayout_2.addLayout(self.verticalLayout_8)
self.verticalLayout_9.addLayout(self.horizontalLayout_2)
self.horizontalLayout = QtWidgets.QHBoxLayout()
self.horizontalLayout.setObjectName("horizontalLayout")
spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout.addItem(spacerItem1)
self.label_ZoomFactor = QtWidgets.QLabel(self.tab_4)
self.label_ZoomFactor.setObjectName("label_ZoomFactor")
self.horizontalLayout.addWidget(self.label_ZoomFactor)
self.ZoomFactor = QtWidgets.QLineEdit(self.tab_4)
self.ZoomFactor.setObjectName("ZoomFactor")
self.horizontalLayout.addWidget(self.ZoomFactor)
spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout.addItem(spacerItem2)
self.verticalLayout_9.addLayout(self.horizontalLayout)
self.gridLayout_2.addLayout(self.verticalLayout_9, 2, 0, 1, 1)
self.Size_textbrowser = QtWidgets.QTextBrowser(self.tab_4)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.Size_textbrowser.sizePolicy().hasHeightForWidth())
self.Size_textbrowser.setSizePolicy(sizePolicy)
self.Size_textbrowser.setMaximumSize(QtCore.QSize(16777215, 40))
self.Size_textbrowser.setObjectName("Size_textbrowser")
self.gridLayout_2.addWidget(self.Size_textbrowser, 1, 0, 1, 1)
self.Fourier.addTab(self.tab_4, "")
self.tab_2 = QtWidgets.QWidget()
self.tab_2.setObjectName("tab_2")
self.gridLayout_9 = QtWidgets.QGridLayout(self.tab_2)
self.gridLayout_9.setObjectName("gridLayout_9")
self.verticalLayout = QtWidgets.QVBoxLayout()
self.verticalLayout.setObjectName("verticalLayout")
self.label_6 = QtWidgets.QLabel(self.tab_2)
self.label_6.setObjectName("label_6")
self.verticalLayout.addWidget(self.label_6)
self.direction_textbrowser = QtWidgets.QTextBrowser(self.tab_2)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.direction_textbrowser.sizePolicy().hasHeightForWidth())
self.direction_textbrowser.setSizePolicy(sizePolicy)
self.direction_textbrowser.setMaximumSize(QtCore.QSize(16777215, 40))
self.direction_textbrowser.setObjectName("direction_textbrowser")
self.verticalLayout.addWidget(self.direction_textbrowser)
self.horizontalLayout_7 = QtWidgets.QHBoxLayout()
self.horizontalLayout_7.setObjectName("horizontalLayout_7")
self.verticalLayout_17 = QtWidgets.QVBoxLayout()
self.verticalLayout_17.setObjectName("verticalLayout_17")
self.label_NearestNeighbor_4 = QtWidgets.QLabel(self.tab_2)
font = QtGui.QFont()
font.setPointSize(11)
font.setBold(True)
font.setWeight(75)
self.label_NearestNeighbor_4.setFont(font)
self.label_NearestNeighbor_4.setAlignment(QtCore.Qt.AlignCenter)
self.label_NearestNeighbor_4.setObjectName("label_NearestNeighbor_4")
self.verticalLayout_17.addWidget(self.label_NearestNeighbor_4)
self.ImageT = QtWidgets.QGraphicsView(self.tab_2)
self.ImageT.setObjectName("ImageT")
self.verticalLayout_17.addWidget(self.ImageT)
self.horizontalLayout_7.addLayout(self.verticalLayout_17)
spacerItem3 = QtWidgets.QSpacerItem(38, 58, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
self.horizontalLayout_7.addItem(spacerItem3)
self.verticalLayout_18 = QtWidgets.QVBoxLayout()
self.verticalLayout_18.setObjectName("verticalLayout_18")
self.label_LinearInterpolation_4 = QtWidgets.QLabel(self.tab_2)
font = QtGui.QFont()
font.setPointSize(11)
font.setBold(True)
font.setWeight(75)
self.label_LinearInterpolation_4.setFont(font)
self.label_LinearInterpolation_4.setAlignment(QtCore.Qt.AlignCenter)
self.label_LinearInterpolation_4.setObjectName("label_LinearInterpolation_4")
self.verticalLayout_18.addWidget(self.label_LinearInterpolation_4)
self.ImageTrotated = QtWidgets.QGraphicsView(self.tab_2)
self.ImageTrotated.setObjectName("ImageTrotated")
self.verticalLayout_18.addWidget(self.ImageTrotated)
self.horizontalLayout_7.addLayout(self.verticalLayout_18)
self.verticalLayout.addLayout(self.horizontalLayout_7)
self.horizontalLayout_8 = QtWidgets.QHBoxLayout()
self.horizontalLayout_8.setObjectName("horizontalLayout_8")
spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_8.addItem(spacerItem4)
self.label_angle = QtWidgets.QLabel(self.tab_2)
self.label_angle.setObjectName("label_angle")
self.horizontalLayout_8.addWidget(self.label_angle)
self.angleofrotation = QtWidgets.QLineEdit(self.tab_2)
self.angleofrotation.setObjectName("angleofrotation")
self.horizontalLayout_8.addWidget(self.angleofrotation)
spacerItem5 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_8.addItem(spacerItem5)
self.radioButton_Nearest = QtWidgets.QRadioButton(self.tab_2)
self.radioButton_Nearest.setEnabled(True)
self.radioButton_Nearest.setAutoFillBackground(False)
self.radioButton_Nearest.setChecked(True)
self.radioButton_Nearest.setObjectName("radioButton_Nearest")
self.horizontalLayout_8.addWidget(self.radioButton_Nearest)
self.radioButton_bilinear = QtWidgets.QRadioButton(self.tab_2)
self.radioButton_bilinear.setObjectName("radioButton_bilinear")
self.horizontalLayout_8.addWidget(self.radioButton_bilinear)
self.verticalLayout.addLayout(self.horizontalLayout_8)
self.gridLayout_9.addLayout(self.verticalLayout, 0, 0, 1, 1)
self.Fourier.addTab(self.tab_2, "")
self.tab = QtWidgets.QWidget()
self.tab.setObjectName("tab")
self.gridLayout = QtWidgets.QGridLayout(self.tab)
self.gridLayout.setObjectName("gridLayout")
self.verticalLayout_10 = QtWidgets.QVBoxLayout()
self.verticalLayout_10.setObjectName("verticalLayout_10")
self.label_4 = QtWidgets.QLabel(self.tab)
font = QtGui.QFont()
font.setPointSize(11)
font.setBold(True)
font.setWeight(75)
self.label_4.setFont(font)
self.label_4.setAlignment(QtCore.Qt.AlignCenter)
self.label_4.setObjectName("label_4")
self.verticalLayout_10.addWidget(self.label_4)
self.shearedimage = QtWidgets.QGraphicsView(self.tab)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.shearedimage.sizePolicy().hasHeightForWidth())
self.shearedimage.setSizePolicy(sizePolicy)
self.shearedimage.setObjectName("shearedimage")
self.verticalLayout_10.addWidget(self.shearedimage)
self.gridLayout.addLayout(self.verticalLayout_10, 0, 0, 1, 1)
self.pushButton = QtWidgets.QPushButton(self.tab)
self.pushButton.setObjectName("pushButton")
self.gridLayout.addWidget(self.pushButton, 2, 0, 1, 1)
spacerItem6 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.gridLayout.addItem(spacerItem6, 1, 0, 1, 1)
self.Fourier.addTab(self.tab, "")
self.tab_5 = QtWidgets.QWidget()
self.tab_5.setObjectName("tab_5")
self.gridLayout_7 = QtWidgets.QGridLayout(self.tab_5)
self.gridLayout_7.setObjectName("gridLayout_7")
self.verticalLayout_25 = QtWidgets.QVBoxLayout()
self.verticalLayout_25.setObjectName("verticalLayout_25")
self.Equlized_Image_label_3 = QtWidgets.QLabel(self.tab_5)
font = QtGui.QFont()
font.setPointSize(10)
font.setBold(True)
font.setWeight(75)
self.Equlized_Image_label_3.setFont(font)
self.Equlized_Image_label_3.setAlignment(QtCore.Qt.AlignCenter)
self.Equlized_Image_label_3.setObjectName("Equlized_Image_label_3")
self.verticalLayout_25.addWidget(self.Equlized_Image_label_3)
self.EqualizedImage = QtWidgets.QGraphicsView(self.tab_5)
self.EqualizedImage.setObjectName("EqualizedImage")
self.verticalLayout_25.addWidget(self.EqualizedImage)
self.gridLayout_7.addLayout(self.verticalLayout_25, 0, 0, 1, 1)
self.verticalLayout_13 = QtWidgets.QVBoxLayout()
self.verticalLayout_13.setObjectName("verticalLayout_13")
self.gridLayout_6 = QtWidgets.QGridLayout()
self.gridLayout_6.setObjectName("gridLayout_6")
self.verticalLayout_23 = QtWidgets.QVBoxLayout()
self.verticalLayout_23.setObjectName("verticalLayout_23")
self.Histogram_label_3 = QtWidgets.QLabel(self.tab_5)
font = QtGui.QFont()
font.setPointSize(10)
font.setBold(True)
font.setWeight(75)
self.Histogram_label_3.setFont(font)
self.Histogram_label_3.setAlignment(QtCore.Qt.AlignCenter)
self.Histogram_label_3.setObjectName("Histogram_label_3")
self.verticalLayout_23.addWidget(self.Histogram_label_3)
self.Original_Histogram = MplWidget(self.tab_5)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.Original_Histogram.sizePolicy().hasHeightForWidth())
self.Original_Histogram.setSizePolicy(sizePolicy)
self.Original_Histogram.setMinimumSize(QtCore.QSize(400, 400))
self.Original_Histogram.setObjectName("Original_Histogram")
self.verticalLayout_23.addWidget(self.Original_Histogram)
self.gridLayout_6.addLayout(self.verticalLayout_23, 1, 0, 1, 1)
spacerItem7 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.gridLayout_6.addItem(spacerItem7, 0, 2, 1, 1)
spacerItem8 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
self.gridLayout_6.addItem(spacerItem8, 1, 1, 1, 1)
spacerItem9 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.gridLayout_6.addItem(spacerItem9, 0, 0, 1, 1)
self.verticalLayout_24 = QtWidgets.QVBoxLayout()
self.verticalLayout_24.setObjectName("verticalLayout_24")
self.Equalized_Histogram_label_3 = QtWidgets.QLabel(self.tab_5)
font = QtGui.QFont()
font.setPointSize(10)
font.setBold(True)
font.setWeight(75)
self.Equalized_Histogram_label_3.setFont(font)
self.Equalized_Histogram_label_3.setAlignment(QtCore.Qt.AlignCenter)
self.Equalized_Histogram_label_3.setObjectName("Equalized_Histogram_label_3")
self.verticalLayout_24.addWidget(self.Equalized_Histogram_label_3)
self.EQ_Histogram = MplWidget(self.tab_5)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.EQ_Histogram.sizePolicy().hasHeightForWidth())
self.EQ_Histogram.setSizePolicy(sizePolicy)
self.EQ_Histogram.setMinimumSize(QtCore.QSize(500, 400))
self.EQ_Histogram.setObjectName("EQ_Histogram")
self.verticalLayout_24.addWidget(self.EQ_Histogram)
self.gridLayout_6.addLayout(self.verticalLayout_24, 1, 2, 1, 1)
self.verticalLayout_13.addLayout(self.gridLayout_6)
self.horizontalLayout_19 = QtWidgets.QHBoxLayout()
self.horizontalLayout_19.setObjectName("horizontalLayout_19")
spacerItem10 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_19.addItem(spacerItem10)
self.pushButton_histogram = QtWidgets.QPushButton(self.tab_5)
self.pushButton_histogram.setObjectName("pushButton_histogram")
self.horizontalLayout_19.addWidget(self.pushButton_histogram)
spacerItem11 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_19.addItem(spacerItem11)
self.verticalLayout_13.addLayout(self.horizontalLayout_19)
self.gridLayout_7.addLayout(self.verticalLayout_13, 1, 0, 1, 1)
self.Fourier.addTab(self.tab_5, "")
self.filter = QtWidgets.QWidget()
self.filter.setObjectName("filter")
self.gridLayout_3 = QtWidgets.QGridLayout(self.filter)
self.gridLayout_3.setObjectName("gridLayout_3")
self.verticalLayout_3 = QtWidgets.QVBoxLayout()
self.verticalLayout_3.setObjectName("verticalLayout_3")
self.label_filtered_image = QtWidgets.QLabel(self.filter)
font = QtGui.QFont()
font.setPointSize(11)
font.setBold(True)
font.setWeight(75)
self.label_filtered_image.setFont(font)
self.label_filtered_image.setAlignment(QtCore.Qt.AlignCenter)
self.label_filtered_image.setObjectName("label_filtered_image")
self.verticalLayout_3.addWidget(self.label_filtered_image)
self.FilteredImage = QtWidgets.QGraphicsView(self.filter)
self.FilteredImage.setObjectName("FilteredImage")
self.verticalLayout_3.addWidget(self.FilteredImage)
self.gridLayout_3.addLayout(self.verticalLayout_3, 0, 0, 1, 1)
self.horizontalLayout_6 = QtWidgets.QHBoxLayout()
self.horizontalLayout_6.setObjectName("horizontalLayout_6")
spacerItem12 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_6.addItem(spacerItem12)
self.filterpushbutton = QtWidgets.QPushButton(self.filter)
self.filterpushbutton.setObjectName("filterpushbutton")
self.horizontalLayout_6.addWidget(self.filterpushbutton)
spacerItem13 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_6.addItem(spacerItem13)
self.gridLayout_3.addLayout(self.horizontalLayout_6, 3, 0, 1, 1)
self.horizontalLayout_13 = QtWidgets.QHBoxLayout()
self.horizontalLayout_13.setObjectName("horizontalLayout_13")
spacerItem14 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_13.addItem(spacerItem14)
self.horizontalLayout_14 = QtWidgets.QHBoxLayout()
self.horizontalLayout_14.setObjectName("horizontalLayout_14")
self.label_kernelsize_3 = QtWidgets.QLabel(self.filter)
self.label_kernelsize_3.setObjectName("label_kernelsize_3")
self.horizontalLayout_14.addWidget(self.label_kernelsize_3)
self.MultiplicationFactor = QtWidgets.QLineEdit(self.filter)
self.MultiplicationFactor.setObjectName("MultiplicationFactor")
self.horizontalLayout_14.addWidget(self.MultiplicationFactor)
self.horizontalLayout_13.addLayout(self.horizontalLayout_14)
spacerItem15 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_13.addItem(spacerItem15)
self.gridLayout_3.addLayout(self.horizontalLayout_13, 2, 0, 1, 1)
self.horizontalLayout_12 = QtWidgets.QHBoxLayout()
self.horizontalLayout_12.setObjectName("horizontalLayout_12")
spacerItem16 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_12.addItem(spacerItem16)
self.horizontalLayout_5 = QtWidgets.QHBoxLayout()
self.horizontalLayout_5.setObjectName("horizontalLayout_5")
self.label_kernelsize = QtWidgets.QLabel(self.filter)
self.label_kernelsize.setObjectName("label_kernelsize")
self.horizontalLayout_5.addWidget(self.label_kernelsize)
self.kernelsize = QtWidgets.QLineEdit(self.filter)
self.kernelsize.setObjectName("kernelsize")
self.horizontalLayout_5.addWidget(self.kernelsize)
self.horizontalLayout_12.addLayout(self.horizontalLayout_5)
spacerItem17 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_12.addItem(spacerItem17)
self.gridLayout_3.addLayout(self.horizontalLayout_12, 1, 0, 1, 1)
self.Fourier.addTab(self.filter, "")
self.noise = QtWidgets.QWidget()
self.noise.setObjectName("noise")
self.gridLayout_17 = QtWidgets.QGridLayout(self.noise)
self.gridLayout_17.setObjectName("gridLayout_17")
spacerItem18 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.gridLayout_17.addItem(spacerItem18, 3, 0, 1, 1)
self.horizontalLayout_15 = QtWidgets.QHBoxLayout()
self.horizontalLayout_15.setObjectName("horizontalLayout_15")
spacerItem19 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_15.addItem(spacerItem19)
self.Noisepushbutton = QtWidgets.QPushButton(self.noise)
self.Noisepushbutton.setObjectName("Noisepushbutton")
self.horizontalLayout_15.addWidget(self.Noisepushbutton)
spacerItem20 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_15.addItem(spacerItem20)
self.gridLayout_17.addLayout(self.horizontalLayout_15, 2, 0, 1, 1)
self.horizontalLayout_11 = QtWidgets.QHBoxLayout()
self.horizontalLayout_11.setObjectName("horizontalLayout_11")
self.verticalLayout_21 = QtWidgets.QVBoxLayout()
self.verticalLayout_21.setObjectName("verticalLayout_21")
self.label_NearestNeighbor_6 = QtWidgets.QLabel(self.noise)
font = QtGui.QFont()
font.setPointSize(11)
font.setBold(True)
font.setWeight(75)
self.label_NearestNeighbor_6.setFont(font)
self.label_NearestNeighbor_6.setAlignment(QtCore.Qt.AlignCenter)
self.label_NearestNeighbor_6.setObjectName("label_NearestNeighbor_6")
self.verticalLayout_21.addWidget(self.label_NearestNeighbor_6)
self.NoisyImage = QtWidgets.QGraphicsView(self.noise)
self.NoisyImage.setObjectName("NoisyImage")
self.verticalLayout_21.addWidget(self.NoisyImage)
self.horizontalLayout_11.addLayout(self.verticalLayout_21)
spacerItem21 = QtWidgets.QSpacerItem(38, 58, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
self.horizontalLayout_11.addItem(spacerItem21)
self.verticalLayout_22 = QtWidgets.QVBoxLayout()
self.verticalLayout_22.setObjectName("verticalLayout_22")
self.label_LinearInterpolation_6 = QtWidgets.QLabel(self.noise)
font = QtGui.QFont()
font.setPointSize(11)
font.setBold(True)
font.setWeight(75)
self.label_LinearInterpolation_6.setFont(font)
self.label_LinearInterpolation_6.setAlignment(QtCore.Qt.AlignCenter)
self.label_LinearInterpolation_6.setObjectName("label_LinearInterpolation_6")
self.verticalLayout_22.addWidget(self.label_LinearInterpolation_6)
self.DenoisedImage = QtWidgets.QGraphicsView(self.noise)
self.DenoisedImage.setObjectName("DenoisedImage")
self.verticalLayout_22.addWidget(self.DenoisedImage)
self.horizontalLayout_11.addLayout(self.verticalLayout_22)
self.gridLayout_17.addLayout(self.horizontalLayout_11, 0, 0, 1, 1)
spacerItem22 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.gridLayout_17.addItem(spacerItem22, 1, 0, 1, 1)
self.label_5 = QtWidgets.QLabel(self.noise)
self.label_5.setGeometry(QtCore.QRect(50, 90, 256, 22))
font = QtGui.QFont()
font.setPointSize(11)
font.setBold(True)
font.setWeight(75)
self.label_5.setFont(font)
self.label_5.setText("")
self.label_5.setAlignment(QtCore.Qt.AlignCenter)
self.label_5.setObjectName("label_5")
self.Fourier.addTab(self.noise, "")
self.tab_6 = QtWidgets.QWidget()
self.tab_6.setObjectName("tab_6")
self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.tab_6)
self.verticalLayout_4.setObjectName("verticalLayout_4")
self.horizontalLayout_9 = QtWidgets.QHBoxLayout()
self.horizontalLayout_9.setObjectName("horizontalLayout_9")
self.verticalLayout_19 = QtWidgets.QVBoxLayout()
self.verticalLayout_19.setObjectName("verticalLayout_19")
self.label_mag = QtWidgets.QLabel(self.tab_6)
font = QtGui.QFont()
font.setPointSize(11)
font.setBold(True)
font.setWeight(75)
self.label_mag.setFont(font)
self.label_mag.setAlignment(QtCore.Qt.AlignCenter)
self.label_mag.setObjectName("label_mag")
self.verticalLayout_19.addWidget(self.label_mag)
self.Magnitude = QtWidgets.QGraphicsView(self.tab_6)
self.Magnitude.setObjectName("Magnitude")
self.verticalLayout_19.addWidget(self.Magnitude)
self.horizontalLayout_9.addLayout(self.verticalLayout_19)
spacerItem23 = QtWidgets.QSpacerItem(38, 58, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
self.horizontalLayout_9.addItem(spacerItem23)
self.verticalLayout_20 = QtWidgets.QVBoxLayout()
self.verticalLayout_20.setObjectName("verticalLayout_20")
self.label_LinearInterpolation_5 = QtWidgets.QLabel(self.tab_6)
font = QtGui.QFont()
font.setPointSize(11)
font.setBold(True)
font.setWeight(75)
self.label_LinearInterpolation_5.setFont(font)
self.label_LinearInterpolation_5.setAlignment(QtCore.Qt.AlignCenter)
self.label_LinearInterpolation_5.setObjectName("label_LinearInterpolation_5")
self.verticalLayout_20.addWidget(self.label_LinearInterpolation_5)
self.Logged_Magnitude = QtWidgets.QGraphicsView(self.tab_6)
self.Logged_Magnitude.setObjectName("Logged_Magnitude")
self.verticalLayout_20.addWidget(self.Logged_Magnitude)
self.horizontalLayout_9.addLayout(self.verticalLayout_20)
self.verticalLayout_4.addLayout(self.horizontalLayout_9)
self.horizontalLayout_10 = QtWidgets.QHBoxLayout()
self.horizontalLayout_10.setObjectName("horizontalLayout_10")
self.verticalLayout_26 = QtWidgets.QVBoxLayout()
self.verticalLayout_26.setObjectName("verticalLayout_26")
self.label_NearestNeighbor_7 = QtWidgets.QLabel(self.tab_6)
font = QtGui.QFont()
font.setPointSize(11)
font.setBold(True)
font.setWeight(75)
self.label_NearestNeighbor_7.setFont(font)
self.label_NearestNeighbor_7.setAlignment(QtCore.Qt.AlignCenter)
self.label_NearestNeighbor_7.setObjectName("label_NearestNeighbor_7")
self.verticalLayout_26.addWidget(self.label_NearestNeighbor_7)
self.Phase = QtWidgets.QGraphicsView(self.tab_6)
self.Phase.setObjectName("Phase")
self.verticalLayout_26.addWidget(self.Phase)
self.horizontalLayout_10.addLayout(self.verticalLayout_26)
spacerItem24 = QtWidgets.QSpacerItem(38, 58, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
self.horizontalLayout_10.addItem(spacerItem24)
self.verticalLayout_27 = QtWidgets.QVBoxLayout()
self.verticalLayout_27.setObjectName("verticalLayout_27")
self.label_LinearInterpolation_7 = QtWidgets.QLabel(self.tab_6)
font = QtGui.QFont()
font.setPointSize(11)
font.setBold(True)
font.setWeight(75)
self.label_LinearInterpolation_7.setFont(font)
self.label_LinearInterpolation_7.setAlignment(QtCore.Qt.AlignCenter)
self.label_LinearInterpolation_7.setObjectName("label_LinearInterpolation_7")
self.verticalLayout_27.addWidget(self.label_LinearInterpolation_7)
self.Logged_Phase = QtWidgets.QGraphicsView(self.tab_6)
self.Logged_Phase.setObjectName("Logged_Phase")
self.verticalLayout_27.addWidget(self.Logged_Phase)
self.horizontalLayout_10.addLayout(self.verticalLayout_27)
self.verticalLayout_4.addLayout(self.horizontalLayout_10)
self.horizontalLayout_18 = QtWidgets.QHBoxLayout()
self.horizontalLayout_18.setObjectName("horizontalLayout_18")
spacerItem25 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_18.addItem(spacerItem25)
self.Fourier_pushbutton = QtWidgets.QPushButton(self.tab_6)
self.Fourier_pushbutton.setObjectName("Fourier_pushbutton")
self.horizontalLayout_18.addWidget(self.Fourier_pushbutton)
spacerItem26 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_18.addItem(spacerItem26)
self.verticalLayout_4.addLayout(self.horizontalLayout_18)
self.Fourier.addTab(self.tab_6, "")
self.tab_7 = QtWidgets.QWidget()
self.tab_7.setObjectName("tab_7")
self.gridLayout_10 = QtWidgets.QGridLayout(self.tab_7)
self.gridLayout_10.setObjectName("gridLayout_10")
self.horizontalLayout_29 = QtWidgets.QHBoxLayout()
self.horizontalLayout_29.setObjectName("horizontalLayout_29")
self.verticalLayout_36 = QtWidgets.QVBoxLayout()
self.verticalLayout_36.setObjectName("verticalLayout_36")
self.label_FourierFiltered_4 = QtWidgets.QLabel(self.tab_7)
font = QtGui.QFont()
font.setPointSize(11)
font.setBold(True)
font.setWeight(75)
self.label_FourierFiltered_4.setFont(font)
self.label_FourierFiltered_4.setAlignment(QtCore.Qt.AlignCenter)
self.label_FourierFiltered_4.setObjectName("label_FourierFiltered_4")
self.verticalLayout_36.addWidget(self.label_FourierFiltered_4)
self.Fourier_Filtered = QtWidgets.QGraphicsView(self.tab_7)
self.Fourier_Filtered.setObjectName("Fourier_Filtered")
self.verticalLayout_36.addWidget(self.Fourier_Filtered)
self.horizontalLayout_29.addLayout(self.verticalLayout_36)
spacerItem27 = QtWidgets.QSpacerItem(38, 58, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
self.horizontalLayout_29.addItem(spacerItem27)
self.verticalLayout_37 = QtWidgets.QVBoxLayout()
self.verticalLayout_37.setObjectName("verticalLayout_37")
self.label_DifferenceImage_ = QtWidgets.QLabel(self.tab_7)
font = QtGui.QFont()
font.setPointSize(11)
font.setBold(True)
font.setWeight(75)
self.label_DifferenceImage_.setFont(font)
self.label_DifferenceImage_.setAlignment(QtCore.Qt.AlignCenter)
self.label_DifferenceImage_.setObjectName("label_DifferenceImage_")
self.verticalLayout_37.addWidget(self.label_DifferenceImage_)
self.Difference_Image = QtWidgets.QGraphicsView(self.tab_7)
self.Difference_Image.setObjectName("Difference_Image")
self.verticalLayout_37.addWidget(self.Difference_Image)
self.horizontalLayout_29.addLayout(self.verticalLayout_37)
self.gridLayout_10.addLayout(self.horizontalLayout_29, 0, 0, 1, 1)
self.horizontalLayout_30 = QtWidgets.QHBoxLayout()
self.horizontalLayout_30.setObjectName("horizontalLayout_30")
spacerItem28 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_30.addItem(spacerItem28)
self.horizontalLayout_31 = QtWidgets.QHBoxLayout()
self.horizontalLayout_31.setObjectName("horizontalLayout_31")
self.label_kernelsize_6 = QtWidgets.QLabel(self.tab_7)
self.label_kernelsize_6.setObjectName("label_kernelsize_6")
self.horizontalLayout_31.addWidget(self.label_kernelsize_6)
self.kernelsizeftt = QtWidgets.QLineEdit(self.tab_7)
self.kernelsizeftt.setObjectName("kernelsizeftt")
self.horizontalLayout_31.addWidget(self.kernelsizeftt)
self.horizontalLayout_30.addLayout(self.horizontalLayout_31)
spacerItem29 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_30.addItem(spacerItem29)
self.gridLayout_10.addLayout(self.horizontalLayout_30, 1, 0, 1, 1)
self.gridLayout_8 = QtWidgets.QGridLayout()
self.gridLayout_8.setObjectName("gridLayout_8")
spacerItem30 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.gridLayout_8.addItem(spacerItem30, 0, 0, 1, 1)
self.frrfilterbtn = QtWidgets.QPushButton(self.tab_7)
self.frrfilterbtn.setObjectName("frrfilterbtn")
self.gridLayout_8.addWidget(self.frrfilterbtn, 0, 1, 1, 1)
spacerItem31 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.gridLayout_8.addItem(spacerItem31, 0, 2, 1, 1)
self.gridLayout_10.addLayout(self.gridLayout_8, 2, 0, 1, 1)
self.Fourier.addTab(self.tab_7, "")
self.tab_8 = QtWidgets.QWidget()
self.tab_8.setObjectName("tab_8")
self.gridLayout_11 = QtWidgets.QGridLayout(self.tab_8)
self.gridLayout_11.setObjectName("gridLayout_11")
self.horizontalLayout_32 = QtWidgets.QHBoxLayout()
self.horizontalLayout_32.setObjectName("horizontalLayout_32")
self.verticalLayout_38 = QtWidgets.QVBoxLayout()
self.verticalLayout_38.setObjectName("verticalLayout_38")
self.label_FourierFiltered_5 = QtWidgets.QLabel(self.tab_8)
font = QtGui.QFont()
font.setPointSize(11)
font.setBold(True)
font.setWeight(75)
self.label_FourierFiltered_5.setFont(font)
self.label_FourierFiltered_5.setAlignment(QtCore.Qt.AlignCenter)
self.label_FourierFiltered_5.setObjectName("label_FourierFiltered_5")
self.verticalLayout_38.addWidget(self.label_FourierFiltered_5)
self.ImagePattern = QtWidgets.QGraphicsView(self.tab_8)
self.ImagePattern.setObjectName("ImagePattern")
self.verticalLayout_38.addWidget(self.ImagePattern)
self.horizontalLayout_32.addLayout(self.verticalLayout_38)
spacerItem32 = QtWidgets.QSpacerItem(38, 58, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
self.horizontalLayout_32.addItem(spacerItem32)
self.verticalLayout_39 = QtWidgets.QVBoxLayout()
self.verticalLayout_39.setObjectName("verticalLayout_39")
self.label_DifferenceImage_1 = QtWidgets.QLabel(self.tab_8)
font = QtGui.QFont()
font.setPointSize(11)
font.setBold(True)
font.setWeight(75)
self.label_DifferenceImage_1.setFont(font)
self.label_DifferenceImage_1.setAlignment(QtCore.Qt.AlignCenter)
self.label_DifferenceImage_1.setObjectName("label_DifferenceImage_1")
self.verticalLayout_39.addWidget(self.label_DifferenceImage_1)
self.Patternremoved = QtWidgets.QGraphicsView(self.tab_8)
self.Patternremoved.setObjectName("Patternremoved")
self.verticalLayout_39.addWidget(self.Patternremoved)
self.horizontalLayout_32.addLayout(self.verticalLayout_39)
self.gridLayout_11.addLayout(self.horizontalLayout_32, 0, 0, 1, 1)
self.Fourier.addTab(self.tab_8, "")
self.ROI = QtWidgets.QWidget()
self.ROI.setObjectName("ROI")
self.gridLayout_13 = QtWidgets.QGridLayout(self.ROI)
self.gridLayout_13.setObjectName("gridLayout_13")
self.gridLayout_12 = QtWidgets.QGridLayout()
self.gridLayout_12.setObjectName("gridLayout_12")
self.verticalLayout_29 = QtWidgets.QVBoxLayout()
self.verticalLayout_29.setObjectName("verticalLayout_29")
self.Histogram_label_4 = QtWidgets.QLabel(self.ROI)
font = QtGui.QFont()
font.setPointSize(10)
font.setBold(True)
font.setWeight(75)
self.Histogram_label_4.setFont(font)
self.Histogram_label_4.setAlignment(QtCore.Qt.AlignCenter)
self.Histogram_label_4.setObjectName("Histogram_label_4")
self.verticalLayout_29.addWidget(self.Histogram_label_4)
self.ROIHistogram = MplWidget(self.ROI)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.ROIHistogram.sizePolicy().hasHeightForWidth())
self.ROIHistogram.setSizePolicy(sizePolicy)
self.ROIHistogram.setMinimumSize(QtCore.QSize(400, 300))
self.ROIHistogram.setObjectName("ROIHistogram")
self.verticalLayout_29.addWidget(self.ROIHistogram)
self.gridLayout_12.addLayout(self.verticalLayout_29, 0, 0, 1, 1)
self.gridLayout_13.addLayout(self.gridLayout_12, 4, 0, 1, 2)
self.horizontalLayout_4 = QtWidgets.QHBoxLayout()
self.horizontalLayout_4.setObjectName("horizontalLayout_4")
spacerItem33 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_4.addItem(spacerItem33)
self.checkBox_uniform = QtWidgets.QCheckBox(self.ROI)
self.checkBox_uniform.setObjectName("checkBox_uniform")
self.horizontalLayout_4.addWidget(self.checkBox_uniform)
spacerItem34 = QtWidgets.QSpacerItem(20, 20, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_4.addItem(spacerItem34)
self.checkBox_gaussian = QtWidgets.QCheckBox(self.ROI)
self.checkBox_gaussian.setObjectName("checkBox_gaussian")
self.horizontalLayout_4.addWidget(self.checkBox_gaussian)
spacerItem35 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_4.addItem(spacerItem35)
self.pushROI = QtWidgets.QPushButton(self.ROI)
self.pushROI.setObjectName("pushROI")
self.horizontalLayout_4.addWidget(self.pushROI)
spacerItem36 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_4.addItem(spacerItem36)
self.gridLayout_13.addLayout(self.horizontalLayout_4, 2, 0, 1, 2)
self.verticalLayout_28 = QtWidgets.QVBoxLayout()
self.verticalLayout_28.setObjectName("verticalLayout_28")
self.Histogram_label_5 = QtWidgets.QLabel(self.ROI)
font = QtGui.QFont()
font.setPointSize(10)
font.setBold(True)
font.setWeight(75)
self.Histogram_label_5.setFont(font)
self.Histogram_label_5.setAlignment(QtCore.Qt.AlignCenter)
self.Histogram_label_5.setObjectName("Histogram_label_5")
self.verticalLayout_28.addWidget(self.Histogram_label_5)
self.ROIimage = MplWidget(self.ROI)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.ROIimage.sizePolicy().hasHeightForWidth())
self.ROIimage.setSizePolicy(sizePolicy)
self.ROIimage.setMinimumSize(QtCore.QSize(400, 300))
self.ROIimage.setObjectName("ROIimage")
self.verticalLayout_28.addWidget(self.ROIimage)
self.gridLayout_13.addLayout(self.verticalLayout_28, 0, 0, 1, 1)
self.line_2 = QtWidgets.QFrame(self.ROI)
self.line_2.setFrameShape(QtWidgets.QFrame.HLine)
self.line_2.setFrameShadow(QtWidgets.QFrame.Sunken)
self.line_2.setObjectName("line_2")
self.gridLayout_13.addWidget(self.line_2, 1, 0, 1, 2)
self.line = QtWidgets.QFrame(self.ROI)
self.line.setFrameShape(QtWidgets.QFrame.HLine)
self.line.setFrameShadow(QtWidgets.QFrame.Sunken)
self.line.setObjectName("line")
self.gridLayout_13.addWidget(self.line, 3, 0, 1, 2)
self.verticalLayout_30 = QtWidgets.QVBoxLayout()
self.verticalLayout_30.setObjectName("verticalLayout_30")
self.ROINoisedimage = QtWidgets.QLabel(self.ROI)
font = QtGui.QFont()
font.setPointSize(10)
font.setBold(True)
font.setWeight(75)
self.ROINoisedimage.setFont(font)
self.ROINoisedimage.setAlignment(QtCore.Qt.AlignCenter)
self.ROINoisedimage.setObjectName("ROINoisedimage")
self.verticalLayout_30.addWidget(self.ROINoisedimage)
self.Original_Histogram_6 = MplWidget(self.ROI)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.Original_Histogram_6.sizePolicy().hasHeightForWidth())
self.Original_Histogram_6.setSizePolicy(sizePolicy)
self.Original_Histogram_6.setMinimumSize(QtCore.QSize(400, 300))
self.Original_Histogram_6.setObjectName("Original_Histogram_6")
self.verticalLayout_30.addWidget(self.Original_Histogram_6)
self.gridLayout_13.addLayout(self.verticalLayout_30, 0, 1, 1, 1)
self.groupBox = QtWidgets.QGroupBox(self.ROI)
font = QtGui.QFont()
font.setPointSize(10)
font.setBold(True)
font.setWeight(75)
self.groupBox.setFont(font)
self.groupBox.setObjectName("groupBox")
self.gridLayout_15 = QtWidgets.QGridLayout(self.groupBox)
self.gridLayout_15.setObjectName("gridLayout_15")
self.textbrowser_histogram_2 = QtWidgets.QTextBrowser(self.groupBox)
self.textbrowser_histogram_2.setObjectName("textbrowser_histogram_2")
self.gridLayout_15.addWidget(self.textbrowser_histogram_2, 0, 0, 1, 1)
self.gridLayout_13.addWidget(self.groupBox, 5, 0, 1, 2)
self.Fourier.addTab(self.ROI, "")
self.tab_9 = QtWidgets.QWidget()
self.tab_9.setObjectName("tab_9")
self.gridLayout_21 = QtWidgets.QGridLayout(self.tab_9)
self.gridLayout_21.setObjectName("gridLayout_21")
self.verticalLayout_12 = QtWidgets.QVBoxLayout()
self.verticalLayout_12.setObjectName("verticalLayout_12")
self.gridLayout_20 = QtWidgets.QGridLayout()
self.gridLayout_20.setObjectName("gridLayout_20")
spacerItem37 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.gridLayout_20.addItem(spacerItem37, 1, 2, 1, 1)
self.SheppLogan = MplWidget(self.tab_9)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.SheppLogan.sizePolicy().hasHeightForWidth())
self.SheppLogan.setSizePolicy(sizePolicy)
self.SheppLogan.setMinimumSize(QtCore.QSize(400, 300))
self.SheppLogan.setObjectName("SheppLogan")
self.gridLayout_20.addWidget(self.SheppLogan, 1, 1, 1, 1)
spacerItem38 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.gridLayout_20.addItem(spacerItem38, 1, 0, 1, 1)
self.ROINoisedimage_15 = QtWidgets.QLabel(self.tab_9)
font = QtGui.QFont()
font.setPointSize(10)
font.setBold(True)
font.setWeight(75)
self.ROINoisedimage_15.setFont(font)
self.ROINoisedimage_15.setAlignment(QtCore.Qt.AlignCenter)
self.ROINoisedimage_15.setObjectName("ROINoisedimage_15")
self.gridLayout_20.addWidget(self.ROINoisedimage_15, 0, 1, 1, 1)
self.verticalLayout_12.addLayout(self.gridLayout_20)
self.verticalLayout_11 = QtWidgets.QVBoxLayout()
self.verticalLayout_11.setObjectName("verticalLayout_11")
self.horizontalLayout_22 = QtWidgets.QHBoxLayout()
self.horizontalLayout_22.setObjectName("horizontalLayout_22")
self.verticalLayout_47 = QtWidgets.QVBoxLayout()
self.verticalLayout_47.setObjectName("verticalLayout_47")
self.ROINoisedimage_14 = QtWidgets.QLabel(self.tab_9)
font = QtGui.QFont()
font.setPointSize(10)
font.setBold(True)
font.setWeight(75)
self.ROINoisedimage_14.setFont(font)
self.ROINoisedimage_14.setAlignment(QtCore.Qt.AlignCenter)
self.ROINoisedimage_14.setObjectName("ROINoisedimage_14")
self.verticalLayout_47.addWidget(self.ROINoisedimage_14)
self.Sinogram = MplWidget(self.tab_9)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.Sinogram.sizePolicy().hasHeightForWidth())
self.Sinogram.setSizePolicy(sizePolicy)
self.Sinogram.setMinimumSize(QtCore.QSize(400, 300))
self.Sinogram.setObjectName("Sinogram")
self.verticalLayout_47.addWidget(self.Sinogram)
self.horizontalLayout_22.addLayout(self.verticalLayout_47)
self.verticalLayout_48 = QtWidgets.QVBoxLayout()
self.verticalLayout_48.setObjectName("verticalLayout_48")
self.ROINoisedimage_16 = QtWidgets.QLabel(self.tab_9)
font = QtGui.QFont()
font.setPointSize(10)
font.setBold(True)
font.setWeight(75)
self.ROINoisedimage_16.setFont(font)
self.ROINoisedimage_16.setAlignment(QtCore.Qt.AlignCenter)
self.ROINoisedimage_16.setObjectName("ROINoisedimage_16")
self.verticalLayout_48.addWidget(self.ROINoisedimage_16)
self.Laminogram = MplWidget(self.tab_9)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.Laminogram.sizePolicy().hasHeightForWidth())
self.Laminogram.setSizePolicy(sizePolicy)
self.Laminogram.setMinimumSize(QtCore.QSize(400, 300))
self.Laminogram.setObjectName("Laminogram")
self.verticalLayout_48.addWidget(self.Laminogram)
self.horizontalLayout_22.addLayout(self.verticalLayout_48)
self.verticalLayout_11.addLayout(self.horizontalLayout_22)
self.verticalLayout_2 = QtWidgets.QVBoxLayout()
self.verticalLayout_2.setObjectName("verticalLayout_2")
self.horizontalLayout_21 = QtWidgets.QHBoxLayout()
self.horizontalLayout_21.setContentsMargins(-1, -1, -1, 0)
self.horizontalLayout_21.setSpacing(0)
self.horizontalLayout_21.setObjectName("horizontalLayout_21")
self.groupBox_6 = QtWidgets.QGroupBox(self.tab_9)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.groupBox_6.sizePolicy().hasHeightForWidth())
self.groupBox_6.setSizePolicy(sizePolicy)
self.groupBox_6.setMinimumSize(QtCore.QSize(0, 100))
self.groupBox_6.setMaximumSize(QtCore.QSize(16777215, 16777215))
self.groupBox_6.setObjectName("groupBox_6")
self.gridLayout_16 = QtWidgets.QGridLayout(self.groupBox_6)
self.gridLayout_16.setObjectName("gridLayout_16")
self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
self.horizontalLayout_3.setObjectName("horizontalLayout_3")
self.NoFilter = QtWidgets.QRadioButton(self.groupBox_6)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.NoFilter.sizePolicy().hasHeightForWidth())
self.NoFilter.setSizePolicy(sizePolicy)
self.NoFilter.setObjectName("NoFilter")
self.horizontalLayout_3.addWidget(self.NoFilter)
self.RamLak = QtWidgets.QRadioButton(self.groupBox_6)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.RamLak.sizePolicy().hasHeightForWidth())
self.RamLak.setSizePolicy(sizePolicy)
self.RamLak.setObjectName("RamLak")
self.horizontalLayout_3.addWidget(self.RamLak)
self.Hamming = QtWidgets.QRadioButton(self.groupBox_6)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.Hamming.sizePolicy().hasHeightForWidth())
self.Hamming.setSizePolicy(sizePolicy)
self.Hamming.setObjectName("Hamming")
self.horizontalLayout_3.addWidget(self.Hamming)
self.gridLayout_16.addLayout(self.horizontalLayout_3, 0, 0, 1, 1)
self.horizontalLayout_21.addWidget(self.groupBox_6)
spacerItem39 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
self.horizontalLayout_21.addItem(spacerItem39)
self.groupBox_7 = QtWidgets.QGroupBox(self.tab_9)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.groupBox_7.sizePolicy().hasHeightForWidth())
self.groupBox_7.setSizePolicy(sizePolicy)
self.groupBox_7.setMinimumSize(QtCore.QSize(0, 100))
self.groupBox_7.setMaximumSize(QtCore.QSize(16777215, 16777215))
self.groupBox_7.setObjectName("groupBox_7")
self.gridLayout_22 = QtWidgets.QGridLayout(self.groupBox_7)
self.gridLayout_22.setObjectName("gridLayout_22")
self.horizontalLayout_16 = QtWidgets.QHBoxLayout()
self.horizontalLayout_16.setObjectName("horizontalLayout_16")
self.Angle20 = QtWidgets.QRadioButton(self.groupBox_7)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Maximum)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.Angle20.sizePolicy().hasHeightForWidth())
self.Angle20.setSizePolicy(sizePolicy)
self.Angle20.setObjectName("Angle20")
self.horizontalLayout_16.addWidget(self.Angle20)
self.AllAngles = QtWidgets.QRadioButton(self.groupBox_7)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.AllAngles.sizePolicy().hasHeightForWidth())
self.AllAngles.setSizePolicy(sizePolicy)
self.AllAngles.setObjectName("AllAngles")
self.horizontalLayout_16.addWidget(self.AllAngles)
self.gridLayout_22.addLayout(self.horizontalLayout_16, 0, 0, 1, 1)
self.horizontalLayout_21.addWidget(self.groupBox_7)
self.verticalLayout_2.addLayout(self.horizontalLayout_21)
self.horizontalLayout_20 = QtWidgets.QHBoxLayout()
self.horizontalLayout_20.setObjectName("horizontalLayout_20")
spacerItem40 = QtWidgets.QSpacerItem(311, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_20.addItem(spacerItem40)
self.PBLamino_2 = QtWidgets.QPushButton(self.tab_9)
self.PBLamino_2.setObjectName("PBLamino_2")
self.horizontalLayout_20.addWidget(self.PBLamino_2)
spacerItem41 = QtWidgets.QSpacerItem(311, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_20.addItem(spacerItem41)
self.verticalLayout_2.addLayout(self.horizontalLayout_20)
self.verticalLayout_11.addLayout(self.verticalLayout_2)
self.verticalLayout_12.addLayout(self.verticalLayout_11)
self.gridLayout_21.addLayout(self.verticalLayout_12, 0, 0, 1, 1)
self.Fourier.addTab(self.tab_9, "")
self.tab_10 = QtWidgets.QWidget()
self.tab_10.setObjectName("tab_10")
self.gridLayout_19 = QtWidgets.QGridLayout(self.tab_10)
self.gridLayout_19.setObjectName("gridLayout_19")
self.groupBox_8 = QtWidgets.QGroupBox(self.tab_10)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.groupBox_8.sizePolicy().hasHeightForWidth())
self.groupBox_8.setSizePolicy(sizePolicy)
self.groupBox_8.setMinimumSize(QtCore.QSize(0, 100))
self.groupBox_8.setMaximumSize(QtCore.QSize(16777215, 16777215))
self.groupBox_8.setObjectName("groupBox_8")
self.gridLayout_18 = QtWidgets.QGridLayout(self.groupBox_8)
self.gridLayout_18.setObjectName("gridLayout_18")
self.horizontalLayout_17 = QtWidgets.QHBoxLayout()
self.horizontalLayout_17.setObjectName("horizontalLayout_17")
self.rB_Dilation = QtWidgets.QRadioButton(self.groupBox_8)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.rB_Dilation.sizePolicy().hasHeightForWidth())
self.rB_Dilation.setSizePolicy(sizePolicy)
self.rB_Dilation.setObjectName("rB_Dilation")
self.horizontalLayout_17.addWidget(self.rB_Dilation)
self.rB_Erosion = QtWidgets.QRadioButton(self.groupBox_8)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.rB_Erosion.sizePolicy().hasHeightForWidth())
self.rB_Erosion.setSizePolicy(sizePolicy)
self.rB_Erosion.setObjectName("rB_Erosion")
self.horizontalLayout_17.addWidget(self.rB_Erosion)
self.rB_Opening = QtWidgets.QRadioButton(self.groupBox_8)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.rB_Opening.sizePolicy().hasHeightForWidth())
self.rB_Opening.setSizePolicy(sizePolicy)
self.rB_Opening.setObjectName("rB_Opening")
self.horizontalLayout_17.addWidget(self.rB_Opening)
self.rB_Closing = QtWidgets.QRadioButton(self.groupBox_8)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.rB_Closing.sizePolicy().hasHeightForWidth())
self.rB_Closing.setSizePolicy(sizePolicy)
self.rB_Closing.setObjectName("rB_Closing")
self.horizontalLayout_17.addWidget(self.rB_Closing)
self.gridLayout_18.addLayout(self.horizontalLayout_17, 1, 0, 1, 1)
self.gridLayout_19.addWidget(self.groupBox_8, 1, 0, 1, 1)
self.verticalLayout_49 = QtWidgets.QVBoxLayout()
self.verticalLayout_49.setObjectName("verticalLayout_49")
self.ROINoisedimage_17 = QtWidgets.QLabel(self.tab_10)
font = QtGui.QFont()
font.setPointSize(10)
font.setBold(True)