fovi package
Foveated sensing and KNN primitives, with optional models and training.
Historical root trainer exports are resolved only when requested.
Subpackages
- fovi.arch package
- fovi.arch.knn
KNNBaseLayerKNNGetterLayerKNNPoolingLayerKNNConvLayerKNNConvLayer.__init__()KNNConvLayer._init_conv_like()KNNConvLayer._pad_and_gather_knns()KNNConvLayer._apply_local_rf()KNNConvLayer._apply_local_rf_to_weights()KNNConvLayer.forward()KNNConvLayer.clear_optimized_cache()KNNConvLayer.compute_reference_coords()KNNConvLayer.compute_local_rf()KNNConvLayer.load_conv2d_weights()KNNConvLayer.load_conv3d_weights()
KNNDepthwiseSeparableConvLayerKNNDepthwiseConvLayercompute_receptive_field()compute_binary_receptive_field()get_in_out_coords()get_knn_conv_layer()
- fovi.arch.knn_autograd
dataclass()TrainingMetaTrainingMeta.cinTrainingMeta.coutTrainingMeta.ninTrainingMeta.noutTrainingMeta.kTrainingMeta.vTrainingMeta.pTrainingMeta.p64TrainingMeta.qTrainingMeta.input_linearTrainingMeta.weight_linearTrainingMeta.input_linear_flatTrainingMeta.weight_linear_flatTrainingMeta.rev_rowptrTrainingMeta.rev_colTrainingMeta.deviceTrainingMeta.__init__()
ensure_training_metadata()_nout_chunk()_pad_flat_input()_effective_weight_t()CompactTorchOpsregister_ops()KNNConvFunctioncompact_forward()scatter_forward()
- fovi.arch.knn_cuda
- fovi.arch.knn_gather_gemm
- fovi.arch.knn_optimization
- fovi.arch.knn_pool_cuda
- fovi.arch.knn_warp
_make_uncached_r2_kernel()_make_uncached_r4_kernel()_canary_launch_ok()_get_uncached_batch_config()_select_uncached_batch_config()_pad_bias_to_tiles()run_cached()_make_grad_input_stage2_kernel()_make_grad_weight_stage3_kernel()_make_grad_weight_stage4_kernel()_make_grad_weight_stage2_kernel()_canary_grad_stage_ok()_get_grad_kernel()_pad_flat_input_fp16()grad_input()grad_weight()WarpCompactOpsWarpTrainOps_register_ops()run_uncached()
- fovi.arch.mlp
- fovi.arch.norm
- fovi.arch.polar
- fovi.arch.wrapper
- fovi.arch.knn
- fovi.models package
- fovi.models.alexnet
- fovi.models.architectures
alexnet2023()fovi_alexnet2023()resnet18()resnet34()resnet50()matched_resnet18()matched_resnet50()fovi_resnet()fovi_resnet9()fovi_resnet9_lowres()fovi_resnet18()fovi_resnet50()fovi_resnet18_lora()fovi_resnet18_lowres()fovi_resnet9_dwsep()fovi_resnet9_dwsep_lowres()fovi_resnet18_dwsep()fovi_resnet18_dwsep_lowres()fovi_vit()fovi_vit_base()fovi_vit_small()fovi_vit_tiny()vit()vit_base()vit_small()vit_tiny()vit_custom()fovi_vit_custom()fovi_dinov3()arch_wrapper()ArchitectureRegistry
- fovi.models.convnextv2
- fovi.models.dinov3
- fovi.models.fovinet
FoviNetFoviNet.__init__()FoviNet.init_fixation_system()FoviNet.get_in_channels()FoviNet.get_repr_sizes()FoviNet.to()FoviNet.forward_ssl()FoviNet.forward_supervised()FoviNet.forward()FoviNet.get_transforms()FoviNet.setup_activation_hooks()FoviNet.get_captured_activations()FoviNet.cleanup_activation_hooks()FoviNet.list_available_layers()FoviNet.get_activations()FoviNet.list_knn_layers()FoviNet.get_num_coords()
- fovi.models.hub
- fovi.models.knnalexnet
- fovi.models.knnconvnextv2
- fovi.models.knnresnet
- fovi.models.knnvit
- fovi.models.loading
SequencePathPath.cwd()Path.home()Path.samefile()Path.iterdir()Path.glob()Path.rglob()Path.absolute()Path.resolve()Path.stat()Path.owner()Path.group()Path.open()Path.read_bytes()Path.read_text()Path.write_bytes()Path.write_text()Path.readlink()Path.touch()Path.mkdir()Path.chmod()Path.lchmod()Path.unlink()Path.rmdir()Path.lstat()Path.rename()Path.replace()Path.symlink_to()Path.hardlink_to()Path.link_to()Path.exists()Path.is_dir()Path.is_file()Path.is_mount()Path.is_symlink()Path.is_block_device()Path.is_char_device()Path.is_fifo()Path.is_socket()Path.expanduser()
GlobalHydraDictConfigOmegaConfOmegaConf.__init__()OmegaConf.structured()OmegaConf.create()OmegaConf.load()OmegaConf.save()OmegaConf.from_cli()OmegaConf.from_dotlist()OmegaConf.merge()OmegaConf.unsafe_merge()OmegaConf.register_resolver()OmegaConf.legacy_register_resolver()OmegaConf.register_new_resolver()OmegaConf.has_resolver()OmegaConf.clear_resolvers()OmegaConf.clear_resolver()OmegaConf.get_cache()OmegaConf.set_cache()OmegaConf.clear_cache()OmegaConf.copy_cache()OmegaConf.set_readonly()OmegaConf.is_readonly()OmegaConf.set_struct()OmegaConf.is_struct()OmegaConf.masked_copy()OmegaConf.to_container()OmegaConf.to_object()OmegaConf.is_missing()OmegaConf.is_interpolation()OmegaConf.is_list()OmegaConf.is_dict()OmegaConf.is_config()OmegaConf.get_type()OmegaConf.select()OmegaConf.update()OmegaConf.to_yaml()OmegaConf.resolve()OmegaConf.missing_keys()
open_dict()HiddenPrintsdefault_model_dirs()load_sharded_state_dict()load_config()find_config()get_model_from_base_fn()
- fovi.models.pretrained_resnet
IterableResNet18_Weightsresnet18()apply_lora()KNNConvLayerKNNConvLayer.__init__()KNNConvLayer._init_conv_like()KNNConvLayer._pad_and_gather_knns()KNNConvLayer._apply_local_rf()KNNConvLayer._apply_local_rf_to_weights()KNNConvLayer.forward()KNNConvLayer.clear_optimized_cache()KNNConvLayer.compute_reference_coords()KNNConvLayer.compute_local_rf()KNNConvLayer.load_conv2d_weights()KNNConvLayer.load_conv3d_weights()
KNNResNetflattened_basic_blocks()load_torchvision_resnet18()load_torchvision_resnet_backbone()prep_fovi_resnet_finetuning()
- fovi.models.probes
- fovi.models.resnet
- fovi.models.vit
- fovi.sensing package
- fovi.sensing.coords
SamplingCoordsget_isotropic_sampling_coords()get_logpolar_image_sampling_coords()get_warped_cartesian_sampling_coords()num_sampling_coords_isotropic()find_desired_res()get_sampling_coords()rowcol_to_xy()xy_to_rowcol()xy_to_colrow()num_sampling_coords()transform_sampling_grid()auto_match_num_coords()logpolar_radius()cart_to_polar()polar_to_cart()cart_to_complex_log()
- fovi.sensing.grid_sample_cuda
- fovi.sensing.manifold
CorticalSensorManifoldCorticalSensorManifold.__init__()CorticalSensorManifold.m()CorticalSensorManifold.rho_3d()CorticalSensorManifold.phi_3d()CorticalSensorManifold.dm_dr()CorticalSensorManifold.drho_dr()CorticalSensorManifold.z_integrand()CorticalSensorManifold.z_3d()CorticalSensorManifold.map_3d()CorticalSensorManifold.map_to_xyz()CorticalSensorManifold.normalize_coords()CorticalSensorManifold.cort_cartesian_to_cort_cylindrical()CorticalSensorManifold.vis_cartesian_to_cort_cartesian()CorticalSensorManifold.r_from_z()CorticalSensorManifold.cylindrical_to_visual_polar()CorticalSensorManifold.init_visual_mesh()CorticalSensorManifold.init_cortical_mesh()CorticalSensorManifold.reverse_map()
vis_cartesian_to_cortical_cartesian_coords()vis_cartesian_to_cortical_cylindrical()cortical_cylindrical_to_cortical_cartesian()
- fovi.sensing.policies
BaseSaccadePolicyMultiRandomSaccadePolicyMultiRandomSaccadePolicy.retinal_transformMultiRandomSaccadePolicy.n_fixationsMultiRandomSaccadePolicy.fixation_sizeMultiRandomSaccadePolicy.multi_policyMultiRandomSaccadePolicy.nonrandom_valMultiRandomSaccadePolicy.norm_dist_from_centerMultiRandomSaccadePolicy.__init__()MultiRandomSaccadePolicy.forward()
NoSaccadePolicyPolicyRegistry
- fovi.sensing.retina
RetinalTransformRetinalTransform.__init__()RetinalTransform.forward()RetinalTransform._uint8_to_unit()RetinalTransform._announce_pre_transform_execution()RetinalTransform._fast_pre_transforms_supported()RetinalTransform._random_grayscale_points()RetinalTransform._padding_mask_src()RetinalTransform._sample_then_pre_transform()RetinalTransform.change_sigma()RetinalTransform.get_warp_params()RetinalTransform._check_fixation_size()RetinalTransform._check_fix_loc()RetinalTransform._check_aspect_ratio()RetinalTransform._apply_aspect_ratio()
min_diff_for_cmf_a()get_min_cmf_a()GaussianColorDecay
- fovi.sensing.samplers
- fovi.sensing.coords
- fovi.training package
- fovi.training.utils package
- fovi.training.loader
- fovi.training.loading
SequenceOmegaConfOmegaConf.__init__()OmegaConf.structured()OmegaConf.create()OmegaConf.load()OmegaConf.save()OmegaConf.from_cli()OmegaConf.from_dotlist()OmegaConf.merge()OmegaConf.unsafe_merge()OmegaConf.register_resolver()OmegaConf.legacy_register_resolver()OmegaConf.register_new_resolver()OmegaConf.has_resolver()OmegaConf.clear_resolvers()OmegaConf.clear_resolver()OmegaConf.get_cache()OmegaConf.set_cache()OmegaConf.clear_cache()OmegaConf.copy_cache()OmegaConf.set_readonly()OmegaConf.is_readonly()OmegaConf.set_struct()OmegaConf.is_struct()OmegaConf.masked_copy()OmegaConf.to_container()OmegaConf.to_object()OmegaConf.is_missing()OmegaConf.is_interpolation()OmegaConf.is_list()OmegaConf.is_dict()OmegaConf.is_config()OmegaConf.get_type()OmegaConf.select()OmegaConf.update()OmegaConf.to_yaml()OmegaConf.resolve()OmegaConf.missing_keys()
open_dict()find_config()HiddenPrintsTrainerTrainer.__init__()Trainer.setup_distributed()Trainer.cleanup_distributed()Trainer.create_optimizer()Trainer.create_train_loader()Trainer.create_val_loader()Trainer.create_standard_loader()Trainer.create_model_and_scaler()Trainer.reset_model()Trainer.train()Trainer.eval_and_log()Trainer.load_checkpoint()Trainer.checkpoint()Trainer.save_checkpoint()Trainer.train_loop()Trainer.val_loop()Trainer.compute_activations()Trainer.initialize_logger()Trainer.copy_hydra_outputs()Trainer.initialize_remote_logger()Trainer.log()Trainer.exec()Trainer.launch_from_args()Trainer.add_supervised_meters()Trainer.final_accuracy()
get_trainer_from_base_fn()
- fovi.training.trainer
TrainerTrainer.__init__()Trainer.setup_distributed()Trainer.cleanup_distributed()Trainer.create_optimizer()Trainer.create_train_loader()Trainer.create_val_loader()Trainer.create_standard_loader()Trainer.create_model_and_scaler()Trainer.reset_model()Trainer.train()Trainer.eval_and_log()Trainer.load_checkpoint()Trainer.checkpoint()Trainer.save_checkpoint()Trainer.train_loop()Trainer.val_loop()Trainer.compute_activations()Trainer.initialize_logger()Trainer.copy_hydra_outputs()Trainer.initialize_remote_logger()Trainer.log()Trainer.exec()Trainer.launch_from_args()Trainer.add_supervised_meters()Trainer.final_accuracy()
- fovi.training.visualizer
VisualizerVisualizer.trainerVisualizer.modelVisualizer.out_base_dirVisualizer.out_dirVisualizer.__init__()Visualizer.multi_fixation_accuracy()Visualizer.visualize_filters()Visualizer.visualize_filter()Visualizer.visualize_filter_over_space()Visualizer.plot_coordinates()Visualizer.plot_spatial_rf_from_multi_layers()Visualizer.plot_sampling_grids()Visualizer.plot_rf_diameters()Visualizer.print_all_functions()
get_first_conv_weights()visualize_filters()visualize_filters_knn()
- fovi.utils package
add_to_all()get_random_name()get_model()reproducible_results()HiddenPrintsnormalize()timeit()load_pretrained()analyze_rf()normalize_imagenet()flatten_dict()unflatten_dict()- fovi.utils.fastaugs package
- fovi.utils.fastaugs.functional
radians()set_trace()mask_batch()mask_tensor()normalize()to_device()to_numpy()to_float()div_()to_channels_first()to_channels_last()random_grayscale()to_grayscale()dummy_red()mat3()hue_mat()sat_mat()val_mat()hsv_mat()hsv_mat2()hsv_jitter_tensor()hsv_jitter_array()hsv_jitter_array2()hsv_jitter()hsv_jitter2()random_hsv_jitter2()_get_scale_factor()adjust_brightness()adjust_brightness_pil()sigmoid()logit()random_adjust_brightness()adjust_contrast()adjust_contrast_logit()adjust_contrast_pil()adjust_rms_contrast()adjust_rms_contrast_logit()random_adjust_contrast()_prepare_mat()_grid_sample()affine_transform()flip_mat()_prepare_thetas()_prepare_coords()_prepare_rot_pt()_prepare_param()rotate_mat()rotate()zoom_mat()zoom()translate_mat()rotate_object_mat()rotate_object()grid_sample()random_grid_sample()apply_mask()srgb_to_lrgb()rgb_to_xyz()xyz_to_lms()srgb_to_lms()lms_to_lgrby()crop()solarization()random_solarization()random_gaussian_blur2d()generate_batch_permutations()to_torch_image()
- fovi.utils.fastaugs.functional_tensor
Tensorgrid_sample()conv2d()interpolate()torch_pad()get_image_size()get_image_num_channels()convert_image_dtype()vflip()hflip()crop()rgb_to_grayscale()adjust_brightness()adjust_contrast()adjust_hue()adjust_hue_fast()adjust_saturation()mat3()_get_sbc_mat()color_jitter()random_color_jitter()adjust_gamma()center_crop()five_crop()ten_crop()pad()resize()affine()rotate()perspective()gaussian_blur()invert()posterize()solarize()adjust_sharpness()autocontrast()equalize()
- fovi.utils.fastaugs.loader
- fovi.utils.fastaugs.transforms
ComposeRandomApplyToTorchImageToNumpyToChannelsFirstToChannelsLastToDeviceToFloatToFloatDivMultiSampleNormalizeGPUCircularMaskToGrayscaleTorchGPUToGrayscaleGPUColorJitterRandomGaussianBlurRandomHorizontalFlipRandomGrayscaleRandomBrightnessRandomContrastRandomSolarizationRandomRotateRandomZoomRandomPatchShuffleRandomColorJitterYIQRandomColorJitterRandomRotateObject
- fovi.utils.fastaugs.functional
- fovi.utils.backup
- fovi.utils.flops
- fovi.utils.image
- fovi.utils.knnprobe
- fovi.utils.lora
- fovi.utils.losses
- fovi.utils.lr_scheduling
- fovi.utils.std_transforms
Modules
- fovi.demo
- fovi.paths
- fovi.trainer
- fovi.visualizer
VisualizerVisualizer.trainerVisualizer.modelVisualizer.out_base_dirVisualizer.out_dirVisualizer.__init__()Visualizer.multi_fixation_accuracy()Visualizer.visualize_filters()Visualizer.visualize_filter()Visualizer.visualize_filter_over_space()Visualizer.plot_coordinates()Visualizer.plot_spatial_rf_from_multi_layers()Visualizer.plot_sampling_grids()Visualizer.plot_rf_diameters()Visualizer.print_all_functions()
get_first_conv_weights()visualize_filters()visualize_filters_knn()