2727logger = logging .getLogger (__name__ )
2828
2929
30- MWL_DB_PATH = os .getenv ("MWL_DB_PATH" , "/var/lib/pacs/worklist.db" )
31- PACS_DB_PATH = os .getenv ("PACS_DB_PATH" , "/var/lib/pacs/pacs.db" )
30+ DICOM_LATERALITIES = ["L" , "R" ]
31+ DICOM_VIEWS = ["CC" , "MLO" ]
32+ EMULATED_PROCEDURE_DURATION_SECONDS = int (os .getenv ("EMULATED_PROCEDURE_DURATION_SECONDS" , "5" ))
33+ MODALITY = "MG"
3234MWL_AET = os .getenv ("MWL_AET" , "SCREENING_MWL" )
35+ MWL_DB_PATH = os .getenv ("MWL_DB_PATH" , "/var/lib/pacs/worklist.db" )
3336MWL_HOST = os .getenv ("MWL_HOST" , "localhost" )
3437MWL_PORT = int (os .getenv ("MWL_PORT" , "4243" ))
3538PACS_AET = os .getenv ("PACS_AET" , "SCREENING_PACS" )
39+ PACS_DB_PATH = os .getenv ("PACS_DB_PATH" , "/var/lib/pacs/pacs.db" )
3640PACS_HOST = os .getenv ("PACS_HOST" , "localhost" )
3741PACS_PORT = int (os .getenv ("PACS_PORT" , "4244" ))
38- DICOM_LATERALITIES = ["L" , "R" ]
39- DICOM_VIEWS = ["CC" , "MLO" ]
4042SAMPLE_IMAGES_PATH = os .getenv ("SAMPLE_IMAGES_PATH" , "/app/sample_images" )
41- EMULATED_PROCEDURE_DURATION_SECONDS = int (os .getenv ("EMULATED_PROCEDURE_DURATION_SECONDS" , "5" ))
4243
4344
4445class DicomExample :
@@ -58,8 +59,10 @@ def generate_dicom(self) -> Dataset:
5859 logger .error ("No dataset provided for DICOM generation" )
5960 return ds
6061
61- img_path = f"{ SAMPLE_IMAGES_PATH } /{ self . laterality } { self .view } .jpg"
62+ img_path = f"{ SAMPLE_IMAGES_PATH } /L { self .view } .jpg"
6263 img = Image .open (img_path ).convert ("L" )
64+ if self .laterality == "R" :
65+ img = img .transpose (Image .Transpose .FLIP_LEFT_RIGHT )
6366 columns , rows = img .size
6467 pixel_array = np .array (img , dtype = np .uint8 )
6568 pixel_bytes = pixel_array .tobytes ()
@@ -98,7 +101,7 @@ def generate_dicom(self) -> Dataset:
98101 ds .StudyID = f"STUDY{ self .study_instance_uid [- 8 :]} "
99102 ds .SeriesInstanceUID = generate_uid ()
100103 ds .SeriesNumber = self .series_number
101- ds .Modality = "MG"
104+ ds .Modality = MODALITY
102105 ds .InstanceNumber = 1
103106 ds .file_meta = file_meta
104107
@@ -170,9 +173,9 @@ def c_find_dataset(self) -> Dataset:
170173 date_today = datetime .date .today ()
171174 ds = Dataset ()
172175 sps_dataset = Dataset ()
173- sps_dataset .Modality = "MG"
176+ sps_dataset .Modality = MODALITY
174177 sps_dataset .ScheduledProcedureStepStartDate = date_today .strftime ("%Y%m%d" )
175- sps_dataset .ScheduledProcedureStepStartTime = "080000 -"
178+ sps_dataset .ScheduledProcedureStepStartTime = "000000 -"
176179 ds .ScheduledProcedureStepSequence = [sps_dataset ]
177180 return ds
178181
0 commit comments