Skip to content

Commit

Permalink
WIP: automate submodule discovery - x7
Browse files Browse the repository at this point in the history
  • Loading branch information
stnava committed May 22, 2024
1 parent c0a3cdc commit 9283e17
Showing 1 changed file with 164 additions and 27 deletions.
191 changes: 164 additions & 27 deletions antspynet/__init__.py
Original file line number Diff line number Diff line change
@@ -1,27 +1,164 @@
import importlib
import pkgutil
import sys

# Initialize an empty list to hold all functions
__all__ = []

def import_submodules(package_name):
try:
package = importlib.import_module(package_name)
except ModuleNotFoundError as e:
print(f"Error importing package {package_name}: {e}", file=sys.stderr)
return
for loader, name, is_pkg in pkgutil.walk_packages(package.__path__, package.__name__ + '.'):
try:
module = importlib.import_module(name)
except ModuleNotFoundError as e:
print(f"Error importing module {name}: {e}", file=sys.stderr)
continue
for attribute_name in dir(module):
attribute = getattr(module, attribute_name)
if callable(attribute):
globals()[attribute_name] = attribute
__all__.append(attribute_name)

# Import all submodules and their functions
import_submodules('antspynet')

try:
from .version import __version__
except:
pass

from .architectures.create_autoencoder_model import create_autoencoder_model
from .architectures.create_convolutional_autoencoder_model import create_convolutional_autoencoder_model_2d, create_convolutional_autoencoder_model_3d

from .architectures.create_alexnet_model import create_alexnet_model_2d, create_alexnet_model_3d
from .architectures.create_densenet_model import create_densenet_model_2d, create_densenet_model_3d
from .architectures.create_resnet_model import create_resnet_model_2d, create_resnet_model_3d
from .architectures.create_simple_classification_with_spatial_transformer_network_model import create_simple_classification_with_spatial_transformer_network_model_2d, create_simple_classification_with_spatial_transformer_network_model_3d

from .architectures.create_deep_back_projection_network_model import create_deep_back_projection_network_model_2d, create_deep_back_projection_network_model_3d
from .architectures.create_deep_denoise_super_resolution_model import create_deep_denoise_super_resolution_model_2d, create_deep_denoise_super_resolution_model_3d
from .architectures.create_denoising_auto_encoder_super_resolution_model import create_denoising_auto_encoder_super_resolution_model_2d, create_denoising_auto_encoder_super_resolution_model_3d
from .architectures.create_expanded_super_resolution_model import create_expanded_super_resolution_model_2d, create_expanded_super_resolution_model_3d
from .architectures.create_image_super_resolution_model import create_image_super_resolution_model_2d, create_image_super_resolution_model_3d
from .architectures.create_resnet_super_resolution_model import create_resnet_super_resolution_model_2d, create_resnet_super_resolution_model_3d
from .architectures.create_vgg_model import create_vgg_model_2d, create_vgg_model_3d
from .architectures.create_wide_resnet_model import create_wide_resnet_model_2d, create_wide_resnet_model_3d

from .architectures.create_unet_model import create_unet_model_2d, create_unet_model_3d
from .architectures.create_resunet_model import create_resunet_model_2d, create_resunet_model_3d
from .architectures.create_denseunet_model import create_denseunet_model_2d, create_denseunet_model_3d
from .architectures.create_custom_unet_model import create_nobrainer_unet_model_3d
from .architectures.create_custom_unet_model import create_hippmapp3r_unet_model_3d
from .architectures.create_custom_unet_model import create_hypermapp3r_unet_model_3d
from .architectures.create_custom_unet_model import create_sysu_media_unet_model_2d, create_sysu_media_unet_model_3d
from .architectures.create_custom_unet_model import create_hypothalamus_unet_model_3d
from .architectures.create_partial_convolution_unet_model import create_partial_convolution_unet_model_2d, create_partial_convolution_unet_model_3d
# from .architectures.create_diffusion_probabilistic_unet_model import create_diffusion_probabilistic_unet_model_2d, create_diffusion_probabilistic_unet_model_3d

from .architectures.create_custom_model import create_simple_fully_convolutional_network_model_3d
from .architectures.create_custom_model import create_rmnet_generator

from .architectures.create_vanilla_gan_model import VanillaGanModel
from .architectures.create_deep_convolutional_gan_model import DeepConvolutionalGanModel
from .architectures.create_wasserstein_gan_model import WassersteinGanModel
from .architectures.create_improved_wasserstein_gan_model import ImprovedWassersteinGanModel
from .architectures.create_cycle_gan_model import CycleGanModel
from .architectures.create_super_resolution_gan_model import SuperResolutionGanModel

from .architectures.create_dense_model import create_dense_model

from .architectures.create_transformer_model import create_vision_transformer_model_2d, create_vision_transformer_model_3d
from .architectures.create_transformer_model import create_compact_convolutional_transformer_model_2d, create_compact_convolutional_transformer_model_3d



from .utilities.get_pretrained_network import get_pretrained_network
from .utilities.get_antsxnet_data import get_antsxnet_data

from .utilities.unet_utilities import encode_unet
from .utilities.unet_utilities import decode_unet
from .utilities.denseunet_utilities import Scale

from .utilities.spatial_transformer_network_utilities import SpatialTransformer2D, SpatialTransformer3D

from .utilities.transformer_utilities import ExtractPatches2D, ExtractPatches3D, EncodePatches, StochasticDepth, ExtractConvolutionalPatches2D, ExtractConvolutionalPatches3D

from .utilities.extract_image_patches import extract_image_patches
from .utilities.reconstruct_image_from_patches import reconstruct_image_from_patches

from .utilities.regression_match_image import regression_match_image

from .utilities.super_resolution_utilities import mse, mae, psnr, ssim, gmsd
from .utilities.super_resolution_utilities import apply_super_resolution_model_to_image

from .utilities.deep_embedded_clustering_utilities import DeepEmbeddedClustering
from .utilities.deep_embedded_clustering_utilities import DeepEmbeddedClusteringModel

# from .utilities.mixture_density_utilities import MixtureDensityLayer
# from .utilities.mixture_density_utilities import get_mixture_density_loss_function
# from .utilities.mixture_density_utilities import get_mixture_density_sampling_function
# from .utilities.mixture_density_utilities import get_mixture_density_mse_function
# from .utilities.mixture_density_utilities import split_mixture_parameters
# from .utilities.mixture_density_utilities import mixture_density_software_max
# from .utilities.mixture_density_utilities import sample_from_output

from .utilities.resample_tensor_utilities import ResampleTensorLayer2D, ResampleTensorLayer3D
from .utilities.resample_tensor_utilities import ResampleTensorToTargetTensorLayer2D, ResampleTensorToTargetTensorLayer3D

from .utilities.attention_utilities import AttentionLayer2D, AttentionLayer3D

from .utilities.custom_metrics import binary_dice_coefficient
from .utilities.custom_metrics import multilabel_dice_coefficient
from .utilities.custom_metrics import peak_signal_to_noise_ratio
from .utilities.custom_metrics import pearson_correlation_coefficient
from .utilities.custom_metrics import categorical_focal_loss
from .utilities.custom_metrics import weighted_categorical_crossentropy
from .utilities.custom_metrics import binary_surface_loss
from .utilities.custom_metrics import maximum_mean_discrepancy

from .utilities.custom_normalization_layers import InstanceNormalization

from .utilities.custom_activation_layers import LogSoftmax

from .utilities.custom_convolution_layers import PartialConv2D, PartialConv3D

from .utilities.gaussian_diffusion_utilities import GaussianDiffusion

from .utilities.cropping_and_padding_utilities import crop_image_center
from .utilities.cropping_and_padding_utilities import pad_or_crop_image_to_size
from .utilities.cropping_and_padding_utilities import pad_image_by_factor

from .utilities.histogram_warp_image_intensities import histogram_warp_image_intensities
from .utilities.simulate_bias_field import simulate_bias_field

from .utilities.randomly_transform_image_data import randomly_transform_image_data
from .utilities.data_augmentation import data_augmentation

from .utilities.preprocess_image import preprocess_brain_image
from .utilities.brain_extraction import brain_extraction
from .utilities.brain_tumor_segmentation import brain_tumor_segmentation
from .utilities.brain_mra_vessel_segmentation import brain_mra_vessel_segmentation
from .utilities.lesion_segmentation import lesion_segmentation
from .utilities.lesion_segmentation import lesion_segmentation_experimental
from .utilities.inpainting import whole_head_inpainting
from .utilities.cortical_thickness import cortical_thickness
from .utilities.cortical_thickness import longitudinal_cortical_thickness

from .utilities.histology import arterial_lesion_segmentation

# from .utilities.histology import allen_ex5_brain_extraction
# from .utilities.histology import allen_histology_brain_mask
# from .utilities.histology import allen_histology_cerebellum_mask
# from .utilities.histology import allen_histology_hemispherical_coronal_mask
# from .utilities.histology import allen_histology_super_resolution
# from .utilities.histology import mouse_mri_brain_extraction

from .utilities.mouse import mouse_brain_extraction
from .utilities.mouse import mouse_brain_parcellation
from .utilities.mouse import mouse_histology_brain_mask
from .utilities.mouse import mouse_histology_cerebellum_mask
from .utilities.mouse import mouse_histology_hemispherical_coronal_mask
from .utilities.mouse import mouse_histology_super_resolution
from .utilities.mouse import mouse_cortical_thickness

from .utilities.lung_extraction import lung_extraction
from .utilities.lung_segmentation import lung_pulmonary_artery_segmentation
from .utilities.lung_segmentation import lung_airway_segmentation

from .utilities.white_matter_hyperintensity_segmentation import sysu_media_wmh_segmentation
from .utilities.white_matter_hyperintensity_segmentation import hypermapp3r_segmentation
from .utilities.white_matter_hyperintensity_segmentation import wmh_segmentation
from .utilities.claustrum_segmentation import claustrum_segmentation
from .utilities.hypothalamus_segmentation import hypothalamus_segmentation
from .utilities.hippmapp3r_segmentation import hippmapp3r_segmentation
from .utilities.deep_flash import deep_flash
from .utilities.deep_atropos import deep_atropos
from .utilities.desikan_killiany_tourville_labeling import desikan_killiany_tourville_labeling
from .utilities.cerebellum_morphology import cerebellum_morphology
from .utilities.brain_age import brain_age
from .utilities.mri_super_resolution import mri_super_resolution
from .utilities.quality_assessment import tid_neural_image_assessment
from .utilities.quality_assessment import random_mask
from .utilities.lung_segmentation import el_bicho

from .utilities.mri_modality_classification import mri_modality_classification
from .utilities.chexnet import chexnet
from .utilities.chexnet import check_xray_lung_orientation
from .utilities.neural_style_transfer import neural_style_transfer

0 comments on commit 9283e17

Please sign in to comment.