Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Potentially add Apple internal filters #146

Open
frankschlegel opened this issue May 27, 2021 · 2 comments
Open

Potentially add Apple internal filters #146

frankschlegel opened this issue May 27, 2021 · 2 comments

Comments

@frankschlegel
Copy link

Through a question on StackOverflow I learned that the internal filters that are part of the CIImage.autoAdjustmentFilters() can actually be initialized independently by their name.
Digging a bit deeper I found that there are a lot of interesting internal filters, all of them belonging to the CICategoryApplePrivate category. Here is a list retrieved by CIFilter.filterNames(inCategory: "CICategoryApplePrivate"):

  • CIAppleSmithGossettScale
  • CIAreaMinMaxNormalize
  • CIAreaMinMaxRedNormalize
  • CIAreaRedCentroid
  • CIAreaRedRadialCentroid
  • CIASG50Percent
  • CIASG60Percent
  • CIASG66Percent
  • CIASG75Percent
  • CIASG80Percent
  • CICheapBilateral
  • CICheapBlur
  • CICheapMorphology
  • CICheatBlur
  • CICircleGenerator
  • CIColorBalance
  • CIColorPolynomialInverse
  • CIContrastEnhancer
  • CIDepthEffectApplyBlurMap
  • CIDepthEffectMakeBlurMap
  • CIDesaturateShadows
  • CIDisparityRefinement
  • CIDynamicFood
  • CIDynamicRender
  • CIFaceBalance
  • CIFocalPlane
  • CIGaussianBlurXY
  • CIHardMixBlendMode
  • CIHighKey
  • CIInpaintingFilter
  • CIIntegralImage
  • CILinearLightBlendMode
  • CIMattingSolver
  • CIMirror
  • CIMorphologyLaplacian
  • CIOpacity
  • CIPaperWash
  • CIPassThroughColorFilter
  • CIPassThroughGeneralAltFilter
  • CIPassThroughGeneralFilter
  • CIPassThroughIntermediateFilter
  • CIPassThroughSelectFrom3
  • CIPassThroughWarpFilter
  • CIPercentileRed
  • CIPhotoGrain
  • CIPlusDarkerCompositing
  • CIPlusLighterCompositing
  • CIPortraitEffectBlack
  • CIPortraitEffectBlackoutMono
  • CIPortraitEffectCommercial
  • CIPortraitEffectContour
  • CIPortraitEffectContourV2
  • CIPortraitEffectLight
  • CIPortraitEffectLightV2
  • CIPortraitEffectStage
  • CIPortraitEffectStageMono
  • CIPortraitEffectStageMonoV2
  • CIPortraitEffectStageV2
  • CIPortraitEffectStageWhite
  • CIPortraitEffectStudio
  • CIPortraitEffectStudioV2
  • CIPremultiply
  • CIProSharpenEdges
  • CIPseudoMedian
  • CIRectangleGenerator
  • CIRedEyeCorrections
  • CIRingBlur
  • CISimpleTile
  • CISingleChannelColorMap
  • CISkyAndGrassAdjust
  • CISmartBlackAndWhite
  • CISmartColorFilter
  • CISmartGradient
  • CISmartToneFilter
  • CISoftCubicUpsample
  • CIStretch
  • CIUnpremultiply
  • CIVariableBoxBlur
  • CIVividLightBlendMode
  • CIWrapMirror
  • CUIInnerBevelEmbossFilter
  • CUIInnerGlowOrShadowFilter
  • CUIOuterBevelEmbossFilter
  • CUIOuterGlowOrShadowFilter
  • CUIScaleClampFilter
  • CUIShapeEffectBlur1

Their attributes also list their parameters, though they are not documented very well. But I think they would make a nice addition to CIFilter.io regardless.

@noahsark769
Copy link
Owner

It's an interesting idea! I'd say this makes more sense for an explanatory blog post or something, though - I assume that because these are filters are private, they're subject to change or removal at any time, so they're never safe to use in an app. Would definitely accept a PR to have a flag in the app for including these filters in the json output so you could view them more easily, though! Or even an article on a separate page on the site that goes through them

@noahsark769
Copy link
Owner

I noticed in that stackoverflow that some of these filters are actually listed, though - maybe we could append the filters returned from autoAdjustmentFilters to the cifilter.io json or something? Those are relatively public and documented, so they probably make sense to include

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants