Skip to main content
. 2025 Aug 28;15(17):2170. doi: 10.3390/diagnostics15172170
Algorithm 3 Radiomics feature extraction
  • Require: 

    Dataframe fullmass with columns: patient_id, image_file_path, ROI_mask_file_path, labels

  • Ensure: 

    Radiomics features DataFrame featuresdf

  •    1:

    extractorfeatureextractor.RadiomicsFeatureExtractor()

  •    2:

    extractor.enableFeatureClassByName(shape2D)

  •    3:

    featureslist[]

  •    4:

    for each row in fullmass do

  •    5:

          patientid,imagepath,maskpath,levelrowvalues

  •    6:

          imagecv2.imread(imagepath,cv2.IMREAD_GRAYSCALE)

  •    7:

          maskcv2.imread(maskpath,cv2.IMREAD_GRAYSCALE)

  •    8:

          if image.shapemask.shape then

  •    9:

               new_size(image.shape[1],image.shape[0])

  •  10:

               maskcv2.resize(mask,new_size,cv2.INTER_NEAREST)

  •  11:

          imagesitksitk.GetImageFromArray(image)

  •  12:

          masksitksitk.GetImageFromArray(mask)

  •  13:

          resultextractor.execute(imagesitk,masksitk)

  •  14:

          featureslist.append(result,patientid:patientid,labels:level)

  •  15:

    featuresdfpd.DataFrame(featureslist)

  •  16:

    features_df.to_csv(radiomicsfeatures.csv,index=False)

  •  17:

    return featuresdf