.
This commit is contained in:
+7
-6
@@ -239,14 +239,15 @@ class SeriesImageBase(models.Model):
|
|||||||
return info
|
return info
|
||||||
|
|
||||||
def generate_hashes(self):
|
def generate_hashes(self):
|
||||||
image_hash, is_dicom = get_image_hash(self.image, hash_type="md5", direct_pixel_data=False)
|
with pydicom.dcmread(self.image) as ds:
|
||||||
|
image_hash, is_dicom = get_image_hash(self.image, dataset=ds, hash_type="md5", direct_pixel_data=False)
|
||||||
|
|
||||||
self.is_dicom = is_dicom
|
self.is_dicom = is_dicom
|
||||||
self.image_md5_hash = image_hash
|
self.image_md5_hash = image_hash
|
||||||
|
|
||||||
image_blake3_hash, is_dicom = get_image_hash(self.image, hash_type="blake3", direct_pixel_data=True)
|
image_blake3_hash, is_dicom = get_image_hash(self.image, dataset=ds, hash_type="blake3", direct_pixel_data=True)
|
||||||
self.is_dicom = is_dicom
|
self.is_dicom = is_dicom
|
||||||
self.image_blake3_hash = image_blake3_hash
|
self.image_blake3_hash = image_blake3_hash
|
||||||
|
|
||||||
self.save()
|
self.save()
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -182,13 +182,13 @@ def get_image_dicom_hash(img, dataset=None, hash_type="md5", direct_pixel_data=T
|
|||||||
hash = hasher.hexdigest()
|
hash = hasher.hexdigest()
|
||||||
return hash
|
return hash
|
||||||
|
|
||||||
def get_image_hash(img, hash_type="blake3", direct_pixel_data=True) -> (str, bool):
|
def get_image_hash(img, dataset=None, hash_type="blake3", direct_pixel_data=True) -> (str, bool):
|
||||||
is_dicom = False
|
is_dicom = False
|
||||||
# Try and read the file as a dicom
|
# Try and read the file as a dicom
|
||||||
hash = "1234"
|
hash = "1234"
|
||||||
try:
|
try:
|
||||||
# and generate a hash from the pixel data
|
# and generate a hash from the pixel data
|
||||||
hash = get_image_dicom_hash(img, hash_type=hash_type, direct_pixel_data=direct_pixel_data)
|
hash = get_image_dicom_hash(img, dataset=dataset, hash_type=hash_type, direct_pixel_data=direct_pixel_data)
|
||||||
is_dicom = True
|
is_dicom = True
|
||||||
# ----
|
# ----
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user