vkit.mechanism.distortion

  1# Copyright 2022 vkit-x Administrator. All Rights Reserved.
  2#
  3# This project (vkit-x/vkit) is dual-licensed under commercial and SSPL licenses.
  4#
  5# The commercial license gives you the full rights to create and distribute software
  6# on your own terms without any SSPL license obligations. For more information,
  7# please see the "LICENSE_COMMERCIAL.txt" file.
  8#
  9# This project is also available under Server Side Public License (SSPL).
 10# The SSPL licensing is ideal for use cases such as open source projects with
 11# SSPL distribution, student/academic purposes, hobby projects, internal research
 12# projects without external distribution, or other projects where all SSPL
 13# obligations can be met. For more information, please see the "LICENSE_SSPL.txt" file.
 14##########################
 15# Photometric Distortion #
 16##########################
 17from .photometric.opt import OutOfBoundBehavior
 18from .photometric.color import (
 19    MeanShiftConfig,
 20    mean_shift,
 21    ColorShiftConfig,
 22    color_shift,
 23    BrightnessShiftConfig,
 24    brightness_shift,
 25    StdShiftConfig,
 26    std_shift,
 27    BoundaryEqualizationConfig,
 28    boundary_equalization,
 29    HistogramEqualizationConfig,
 30    histogram_equalization,
 31    ComplementConfig,
 32    complement,
 33    PosterizationConfig,
 34    posterization,
 35    ColorBalanceConfig,
 36    color_balance,
 37    ChannelPermutationConfig,
 38    channel_permutation,
 39)
 40from .photometric.blur import (
 41    GaussianBlurConfig,
 42    gaussian_blur,
 43    DefocusBlurConfig,
 44    defocus_blur,
 45    MotionBlurConfig,
 46    motion_blur,
 47    GlassBlurConfig,
 48    glass_blur,
 49    ZoomInBlurConfig,
 50    zoom_in_blur,
 51)
 52from .photometric.noise import (
 53    GaussionNoiseConfig,
 54    gaussion_noise,
 55    PoissonNoiseConfig,
 56    poisson_noise,
 57    ImpulseNoiseConfig,
 58    impulse_noise,
 59    SpeckleNoiseConfig,
 60    speckle_noise,
 61)
 62from .photometric.effect import (
 63    JpegQualityConfig,
 64    jpeg_quality,
 65    PixelationConfig,
 66    pixelation,
 67    FogConfig,
 68    fog,
 69)
 70from .photometric.streak import (
 71    LineStreakConfig,
 72    line_streak,
 73    RectangleStreakConfig,
 74    rectangle_streak,
 75    EllipseStreakConfig,
 76    ellipse_streak,
 77)
 78
 79########################
 80# Geometric Distortion #
 81########################
 82from .geometric.affine import (
 83    ShearHoriConfig,
 84    shear_hori,
 85    ShearVertConfig,
 86    shear_vert,
 87    RotateConfig,
 88    rotate,
 89    SkewHoriConfig,
 90    skew_hori,
 91    SkewVertConfig,
 92    skew_vert,
 93)
 94from .geometric.mls import (
 95    SimilarityMlsConfig,
 96    similarity_mls,
 97)
 98from .geometric.camera import (
 99    CameraModelConfig,
100    CameraPlaneOnlyConfig,
101    camera_plane_only,
102    CameraCubicCurveConfig,
103    camera_cubic_curve,
104    CameraPlaneLineFoldConfig,
105    camera_plane_line_fold,
106    CameraPlaneLineCurveConfig,
107    camera_plane_line_curve,
108)