コード例 #1
0
    def test_dcmread_get_dcmdir_qt(self):

        dirpath = dcmr.get_dcmdir_qt()
        #self.data3d, self.metadata = dcmr.dcm_read_from_dir(self.dcmdir)
        reader = dcmr.DicomReader(dirpath)
        self.data3d = reader.get_3Ddata()
        self.metadata = reader.get_metaData()
コード例 #2
0
    def test_dcmread_select_series(self):

        #dirpath = dcmr.get_dcmdir_qt()
        dirpath = '/home/mjirik/data/medical/data_orig/46328096/'
        #dirpath = dcmr.get_dcmdir_qt()
        #app = QMainWindow()
        reader = dcmr.DicomReader(dirpath, series_number = 55555)#, #qt_app =app)
        #app.exit()
        self.data3d = reader.get_3Ddata()
        self.metadata = reader.get_metaData()
コード例 #3
0
ファイル: dcmreaddata_test.py プロジェクト: kunesj/io3d
    def test_dcmread_isbweb_phalanx1(self):

        # dirpath = dcmr.get_dcmdir_qt()
        dirpath = '~/data/medical/orig/isbweb/phalanx1/'
        # dirpath = dcmr.get_dcmdir_qt()
        # app = QMainWindow()
        reader = dcmr.DicomReader(dirpath)  # , #qt_app =app)
        # app.exit()
        self.data3d = reader.get_3Ddata()
        self.metadata = reader.get_metaData()
コード例 #4
0
ファイル: dcmreaddata_test.py プロジェクト: kunesj/io3d
    def test_dcmread_piglets(self):

        # dirpath = dcmr.get_dcmdir_qt()
        dirpath = '~/data/medical/orig/piglets/P02/PRIVATE_MI_LIVER_CORROSIVE_(ADULT)_20131022_075148_171000/VEN_ABDOMEN_5_0_B31S_0002/'
        # dirpath = dcmr.get_dcmdir_qt()
        # app = QMainWindow()
        reader = dcmr.DicomReader(dirpath)  # , #qt_app =app)
        # app.exit()
        self.data3d = reader.get_3Ddata()
        self.metadata = reader.get_metaData()
コード例 #5
0
    def test_dcmread_series_number(self):

        dcmdir = lisa.dataset.join_sdp('jatra_5mm')
        #dcmdir = '/home/mjirik/data/medical/data_orig/jatra-kma/jatra_5mm/'
        #self.data3d, self.metadata = dcmr.dcm_read_from_dir(self.dcmdir)
# spravne cislo serie je 7
        reader =  dcmr.DicomReader(dcmdir,series_number = 7)
        data3d = reader.get_3Ddata()
        metadata = reader.get_metaData()
        self.assertEqual(data3d.shape[2],512)
        self.assertEqual(metadata['voxelsize_mm'][0],5)
コード例 #6
0
ファイル: dcmreaddata_test.py プロジェクト: kunesj/io3d
    def test_dcmread_select_series_reasmusplus(self):

        # dirpath = dcmr.get_dcmdir_qt()
        dirpath = '~/data/medical/orig/erazmusplus/44204675/'
        # dirpath = dcmr.get_dcmdir_qt()
        # app = QMainWindow()
        reader = dcmr.DicomReader(dirpath,
                                  series_number=55555)  # , #qt_app =app)
        # app.exit()
        self.data3d = reader.get_3Ddata()
        self.metadata = reader.get_metaData()
コード例 #7
0
    def test_dcmread(self):

        dcmdir = lisa.dataset.join_sdp('jatra_5mm')
        #dcmdir = '/home/mjirik/data/medical/data_orig/jatra-kma/jatra_5mm/'
        #self.data3d, self.metadata = dcmr.dcm_read_from_dir(self.dcmdir)
        reader = dcmr.DicomReader(dcmdir)
        data3d = reader.get_3Ddata()
        metadata = reader.get_metaData()
#slice size is 512x512
        self.assertEqual(data3d.shape[2],512)
# voxelsize depth = 5 mm
        self.assertEqual(metadata['voxelsize_mm'][0],5)
コード例 #8
0
ファイル: dcmreaddata_test.py プロジェクト: kunesj/io3d
    def test_DicomReader_overlay(self):
        # import matplotlib.pyplot as plt

        dcmdir = os.path.join(sample_data_path, '../sample_data/volumetrie/')
        # dcmdir = '/home/mjirik/data/medical/data_orig/jatra-kma/jatra_5mm/'
        # self.data3d, self.metadata = dcmr.dcm_read_from_dir(self.dcmdir)
        reader = dcmr.DicomReader(dcmdir)
        overlay = reader.get_overlay()
        # import pdb; pdb.set_trace()
        # plt.imshow(overlay[1][:,:,0])
        # plt.show()

        self.assertEqual(overlay[1][0, 200, 200], 1)
        self.assertEqual(overlay[1][0, 100, 100], 0)
コード例 #9
0
ファイル: dcmreaddata_test.py プロジェクト: kunesj/io3d
    def test_dcmread_not_defined_slice_width(self):

        # app = QApplication(sys.argv)
        # dirpath = dcmr.get_dcmdir_qt()
        dirpath = 'e:/data/medical/orig/chk/83674597/'
        dirpath = 'e:/data/medical/orig/chk/84490561/'
        # dirpath = dcmr.get_dcmdir_qt()
        # app = QMainWindow()
        reader = dcmr.DicomReader(
            dirpath,
            # qt_app=app,
            series_number=8,
        )  # , #qt_app =app)
        # app.exit()
        self.data3d = reader.get_3Ddata()
        self.metadata = reader.get_metaData()
        sz = self.data3d.shape
        print(sz)
コード例 #10
0
    def test_DicomReader_overlay(self):
        import os.path as op
        # sample_data_path = "~/data/medical/orig/sample_data/"
        # sample_data_path = op.expanduser(sample_data_path)
        sample_data_path = io3d.datasets.join_path("sample_data/")
        #import matplotlib.pyplot as plt

        # dcmdir = lisa.dataset.join_sdp('volumetrie/')
        dcmdir = os.path.join(sample_data_path, 'volumetrie/')
        # dcmdir = '/home/mjirik/data/medical/data_orig/jatra-kma/jatra_5mm/'
        #self.data3d, self.metadata = dcmr.dcm_read_from_dir(self.dcmdir)
        reader = dcmr.DicomReader(dcmdir)
        overlay = reader.get_overlay()
        #import pdb; pdb.set_trace()
        #plt.imshow(overlay[1][:,:,0])
        #plt.show()

        self.assertEqual(overlay[1][0, 200, 200], 1)
        self.assertEqual(overlay[1][0, 100, 100], 0)
コード例 #11
0
ファイル: dcmreaddata_test.py プロジェクト: kunesj/io3d
    def test_dcmread(self):

        dcmdir = os.path.join(sample_data_path, '../sample_data/jatra_5mm')
        # dcmdir = '/home/mjirik/data/medical/data_orig/jatra-kma/jatra_5mm/'
        # self.data3d, self.metadata = dcmr.dcm_read_from_dir(self.dcmdir)
        reader = dcmr.DicomReader(dcmdir)
        data3d = reader.get_3Ddata()
        metadata = reader.get_metaData()
        stats = reader.dcmdirstats()
        info_str = reader.print_series_info(stats, minimal_series_number=0)

        # slice size is 512x512
        self.assertEqual(data3d.shape[2], 512)
        # voxelsize depth = 5 mm
        self.assertEqual(metadata['voxelsize_mm'][0], 5)
        # test stats
        self.assertEqual(stats[7]['Modality'], 'CT')
        self.assertTrue(info_str,
                        '7 (93, CT, DE_Abdom_1F  5.0  B30f M_0.3, )\n')
コード例 #12
0
ファイル: dcmreaddata_test.py プロジェクト: kunesj/io3d
    def test_dcmread_micro_ct_biodur_sample(self):
        # TODO prepare dataset for this test

        # there was problem with DICOMDIR file

        dcmdir = io3d.datasets.join_path("sample_data/biodur_sample/")
        reader = dcmr.DicomReader(dcmdir, force_create_dicomdir=True)
        data3d = reader.get_3Ddata()
        metadata = reader.get_metaData()
        stats = reader.dcmdirstats()
        info_str = reader.print_series_info(stats, minimal_series_number=0)

        # slice size is 512x512
        self.assertEqual(data3d.shape[2], 512)
        # voxelsize depth = 5 mm
        self.assertEqual(metadata['voxelsize_mm'][0], 5)
        # test stats
        self.assertEqual(stats[7]['Modality'], 'CT')
        self.assertTrue(info_str,
                        '7 (93, CT, DE_Abdom_1F  5.0  B30f M_0.3, )\n')
コード例 #13
0
ファイル: dcmreaddata_test.py プロジェクト: kunesj/io3d
    def test_compare_dcmread_and_dataread(self):

        # dcmdir = os.path.join(path_to_script, '../vincentka_2013_06mm/')
        dcmdir = op.join(sample_data_path, 'vincentka_sample/')
        # dcmdir = '/home/mjirik/data/medical/data_orig/jatra-kma/jatra_5mm/'
        # self.data3d, self.metadata = dcmr.dcm_read_from_dir(self.dcmdir)
        reader = dcmr.DicomReader(dcmdir)
        data3d = reader.get_3Ddata()
        # metadata = reader.get_metaData()
        # import sed3
        # ed = sed3.sed3(data3d)
        # ed.show()

        import io3d
        dr = io3d.datareader.DataReader()
        datap = dr.Get3DData(dcmdir, dataplus_format=True)
        ddata3d = datap['data3d']
        # import sed3
        # ed = sed3.sed3(ddata3d)
        # ed.show()
        self.assertEqual(0, np.sum(np.abs(ddata3d - data3d)))
コード例 #14
0
ファイル: dcmreaddata_test.py プロジェクト: kunesj/io3d
    def test_dcmread_some_strange_data(self):
        # there was problem with DICOMDIR file

        dcmdir = "e:\\data\\medical\\orig\\chk\\84490561\\"
        # os.path.join(sample_data_path, '../sample_data/jatra_5mm')
        # dcmdir = '/home/mjirik/data/medical/data_orig/jatra-kma/jatra_5mm/'
        # self.data3d, self.metadata = dcmr.dcm_read_from_dir(self.dcmdir)
        reader = dcmr.DicomReader(dcmdir,
                                  force_create_dicomdir=False,
                                  series_number=10)
        data3d = reader.get_3Ddata()
        metadata = reader.get_metaData()
        stats = reader.dcmdirstats()
        info_str = reader.print_series_info(stats, minimal_series_number=0)

        # slice size is 512x512
        self.assertEqual(data3d.shape[2], 512)
        # voxelsize depth = 5 mm
        self.assertEqual(metadata['voxelsize_mm'][0], 5)
        # test stats
        self.assertEqual(stats[7]['Modality'], 'CT')
コード例 #15
0
ファイル: dcmreaddata_test.py プロジェクト: kunesj/io3d
    def test_dcmread_micro_ct(self):
        # there was problem with DICOMDIR file

        dcmdir = "e:\\data\\medical\\orig\\jatra_mikro_data\\Nejlepsi_rozliseni_nevycistene\\"
        # os.path.join(sample_data_path, '../sample_data/jatra_5mm')
        # dcmdir = '/home/mjirik/data/medical/data_orig/jatra-kma/jatra_5mm/'
        # self.data3d, self.metadata = dcmr.dcm_read_from_dir(self.dcmdir)
        reader = dcmr.DicomReader(dcmdir, force_create_dicomdir=True)
        data3d = reader.get_3Ddata()
        metadata = reader.get_metaData()
        stats = reader.dcmdirstats()
        info_str = reader.print_series_info(stats, minimal_series_number=0)

        # slice size is 512x512
        self.assertEqual(data3d.shape[2], 512)
        # voxelsize depth = 5 mm
        self.assertEqual(metadata['voxelsize_mm'][0], 5)
        # test stats
        self.assertEqual(stats[7]['Modality'], 'CT')
        self.assertTrue(info_str,
                        '7 (93, CT, DE_Abdom_1F  5.0  B30f M_0.3, )\n')
コード例 #16
0
ファイル: dcmreaddata_test.py プロジェクト: kunesj/io3d
    def test_dcmread_perfusion_data_with_strange_serieses(self):
        # there was problem with DICOMDIR file

        dcmdir = alternative_data_path + "perfusion\\32584640\\"
        # os.path.join(sample_data_path, '../sample_data/jatra_5mm')
        # dcmdir = '/home/mjirik/data/medical/data_orig/jatra-kma/jatra_5mm/'
        # self.data3d, self.metadata = dcmr.dcm_read_from_dir(self.dcmdir)
        reader = dcmr.DicomReader(dcmdir,
                                  force_create_dicomdir=True,
                                  series_number=17)
        data3d = reader.get_3Ddata()
        metadata = reader.get_metaData()
        stats = reader.dcmdirstats()
        info_str = reader.print_series_info(stats, minimal_series_number=0)

        # import sed3
        # ed = sed3.sed3(data3d)
        # ed.show()
        # slice size is 512x512
        self.assertEqual(data3d.shape[2], 512)
        # voxelsize depth = 5 mm
        self.assertLess(data3d[0, 0, 0], -1000)
        # in the middle of image should be density higher than 50
        self.assertGreater(np.max(data3d[:, 100:-100, 100:-100]), 50)