Skip to content

Commit

Permalink
kaleidoscopic
Browse files Browse the repository at this point in the history
  • Loading branch information
lostjared committed Oct 12, 2019
1 parent 925f4d0 commit 3408c48
Show file tree
Hide file tree
Showing 6 changed files with 38 additions and 23 deletions.
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -3,22 +3,4 @@
uuid = "75C290BE-94CB-49E7-A143-22B77198A075"
type = "1"
version = "2.0">
<Breakpoints>
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent
shouldBeEnabled = "Yes"
ignoreCount = "0"
continueAfterRunningActions = "No"
filePath = "Acid.Cam.v2.OSX/ac.h"
timestampString = "592562143.779982"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "520"
endingLineNumber = "520"
landmarkName = "unknown"
landmarkType = "0">
</BreakpointContent>
</BreakpointProxy>
</Breakpoints>
</Bucket>
6 changes: 3 additions & 3 deletions Acid.Cam.v2.OSX/ac-filter1.cpp

Large diffs are not rendered by default.

33 changes: 33 additions & 0 deletions Acid.Cam.v2.OSX/ac-filter32.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -841,3 +841,36 @@ void ac::MedianBlendSmoothAlpha(cv::Mat &frame) {
MedianBlendMultiThreadScale(frame);
AddInvert(frame);
}

void ac::MirrorDiamondSubFilter(cv::Mat &frame) {
if(subfilter == -1 || draw_strings[subfilter] == "MirrorDiamondSubFilter")
return;
cv::Mat copy1 = frame.clone();
CallFilter(subfilter, copy1);
static int index = 0;
int start_x = 0;
int off_x = index;
for(int z = 0; z < frame.rows; ++z) {
start_x = off_x;
for(int i = 0; i < frame.cols; ++i) {
if(start_x > frame.cols-1) {
start_x = 0;
}
cv::Vec3b &pixel = frame.at<cv::Vec3b>(z, start_x);
cv::Vec3b pix = copy1.at<cv::Vec3b>(z, i);
for(int j = 0; j < 3; ++j) {
pixel[j] = static_cast<unsigned char>((0.5 * pixel[j]) + (0.5 * pix[j]));
}
++start_x;
}
++off_x;
if(off_x > frame.cols)
off_x = 0;
}
++index;
if(index > frame.cols)
index = 0;

MirrorLeftBottomToTop(frame);
AddInvert(frame);
}
2 changes: 1 addition & 1 deletion Acid.Cam.v2.OSX/ac-filtercat.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ namespace ac {

std::vector<std::string> svGradient { "RandomGradient", "CosSinMultiply","New Blend","Color Accumlate1", "Color Accumulate2", "Color Accumulate3", "Filter8", "Graident Rainbow","Gradient Rainbow Flash","Outward", "Outward Square","GradientLines","GradientSelf","GradientSelfVertical","GradientDown","GraidentHorizontal","GradientRGB","GradientStripes", "GradientReverse", "GradientReverseBox", "GradientReverseVertical", "GradientNewFilter", "AverageLines", "QuadCosSinMultiply", "GradientColors", "GradientColorsVertical", "GradientXorSelfScale", "GradientLeftRight", "GraidentUpDown", "GradientLeftRightInOut", "GradientUpDownInOut", "GradientSubFilterXor","GradientXorPixels", "DivideAndIncH", "DivideAndIncW", "GradientAlphaXorHorizontal", "GradientAlphaXorVertical", "Filter8_Blend", "GradientRandom","GradientGlitch", "GradientAlphaBlend","GradientFilter", "GradientFilterAlphaBlend", "RandomGradientColors", "GradientColorMap", "GradientXor"};

std::vector<std::string> svMirror { "ImageXorMirrorFilter", "NewOne", "MirrorBlend", "Sideways Mirror","Mirror No Blend","Mirror Average", "Mirror Average Mix","Reverse","Double Vision","RGB Shift","RGB Sep","Side2Side","Top2Bottom", "Soft_Mirror", "KanapaTrip", "InterReverse", "InterMirror", "InterFullMirror", "MirrorRGB", "LineByLineReverse", "CycleShiftRGB", "CycleShiftRandomRGB", "CycleShiftRandomRGB_XorBlend", "RGBMirror", "MirrorStrobe", "RandomMirror", "RandomMirrorBlend", "RandomMirrorAlphaBlend", "MirrorXor", "MirrorXorAll", "MirrorXorScale", "EnergyMirror", "MirrorXorAlpha", "MirrorEnergizeSubFilter", "IntertwinedMirror", "BlurredMirror", "DoubleRandomMirror", "FlipMirror", "FlipMirrorAverage","FlipMirrorSubFilter", "RGBMirror1", "RGBMirror1Median", "FlashMirror", "ReverseMirrorX", "MirrorXorAll_Reverse", "MirrorRGBReverse", "MirrorRGBReverseBlend", "MirrorBitwiseXor", "EnergyMirrorDark", "AlphaBlendMirror", "TwistedMirror", "MirrorMatrixCollection", "MirrorMatrixSource", "SmoothMirrorBlurFlip", "MirrorOrder", "BlurMirrorOrder", "AveragePixelMirror", "SoftFeedbackMirror", "MirrorAlphaBlend","RandomMirrorBitwiseXor", "MirrorBlendFrame", "MirrorBlendVertical", "MirrorVerticalAndHorizontal", "MirrorSidesMedian", "MirrorEachSecond", "Mirror_Xor_Combined", "MirrorFrameShuffle", "MirrorShuffleSmooth", "Mirror_Xor_Smooth", "XorMirrorBlendFrame", "MatrixCollectionMirrorDirection", "MirrorIntertwine", "ReverseOnOff", "MirrorLeft", "MirrorRight","MirrorBackAndForth", "FlipMirrorAlphaBlend", "StretchVerticalMirror", "MirrorTopToBottom", "MirrorBottomToTop", "MirrorSwitch", "MirrorSwitchFlip", "MirrorLeftMirrorRightBlend", "MirrorTopMirrorBottomBlend", "MirrorAll", "MirrorDoubleVision", "Mirror_Rainbow_Blur", "MirrorMedianBlur", "MirrorLeftBottomToTop", "MirrorRightTopToBottom","GhostMirrorReversed", "GhostMirrorFade", "MirrorFadeLeftRight", "MirrorFadeUpDown", "DarkTrailsKaleidoscope", "MirrorFadeAll", "AlphaBlendMirrorFade", "TwinKaleidoscope", "Mirror_ReverseColor","MirrorSwitchMode", "MirrorSwitchLeftRight","MirrorDiamond", "MirrorDiamondRight", "MirrorDiamondReverse", "MirrorDiamondBlend","MirrorDiamondRandom"};
std::vector<std::string> svMirror { "ImageXorMirrorFilter", "NewOne", "MirrorBlend", "Sideways Mirror","Mirror No Blend","Mirror Average", "Mirror Average Mix","Reverse","Double Vision","RGB Shift","RGB Sep","Side2Side","Top2Bottom", "Soft_Mirror", "KanapaTrip", "InterReverse", "InterMirror", "InterFullMirror", "MirrorRGB", "LineByLineReverse", "CycleShiftRGB", "CycleShiftRandomRGB", "CycleShiftRandomRGB_XorBlend", "RGBMirror", "MirrorStrobe", "RandomMirror", "RandomMirrorBlend", "RandomMirrorAlphaBlend", "MirrorXor", "MirrorXorAll", "MirrorXorScale", "EnergyMirror", "MirrorXorAlpha", "MirrorEnergizeSubFilter", "IntertwinedMirror", "BlurredMirror", "DoubleRandomMirror", "FlipMirror", "FlipMirrorAverage","FlipMirrorSubFilter", "RGBMirror1", "RGBMirror1Median", "FlashMirror", "ReverseMirrorX", "MirrorXorAll_Reverse", "MirrorRGBReverse", "MirrorRGBReverseBlend", "MirrorBitwiseXor", "EnergyMirrorDark", "AlphaBlendMirror", "TwistedMirror", "MirrorMatrixCollection", "MirrorMatrixSource", "SmoothMirrorBlurFlip", "MirrorOrder", "BlurMirrorOrder", "AveragePixelMirror", "SoftFeedbackMirror", "MirrorAlphaBlend","RandomMirrorBitwiseXor", "MirrorBlendFrame", "MirrorBlendVertical", "MirrorVerticalAndHorizontal", "MirrorSidesMedian", "MirrorEachSecond", "Mirror_Xor_Combined", "MirrorFrameShuffle", "MirrorShuffleSmooth", "Mirror_Xor_Smooth", "XorMirrorBlendFrame", "MatrixCollectionMirrorDirection", "MirrorIntertwine", "ReverseOnOff", "MirrorLeft", "MirrorRight","MirrorBackAndForth", "FlipMirrorAlphaBlend", "StretchVerticalMirror", "MirrorTopToBottom", "MirrorBottomToTop", "MirrorSwitch", "MirrorSwitchFlip", "MirrorLeftMirrorRightBlend", "MirrorTopMirrorBottomBlend", "MirrorAll", "MirrorDoubleVision", "Mirror_Rainbow_Blur", "MirrorMedianBlur", "MirrorLeftBottomToTop", "MirrorRightTopToBottom","GhostMirrorReversed", "GhostMirrorFade", "MirrorFadeLeftRight", "MirrorFadeUpDown", "DarkTrailsKaleidoscope", "MirrorFadeAll", "AlphaBlendMirrorFade", "TwinKaleidoscope", "Mirror_ReverseColor","MirrorSwitchMode", "MirrorSwitchLeftRight","MirrorDiamond", "MirrorDiamondRight", "MirrorDiamondReverse", "MirrorDiamondBlend","MirrorDiamondRandom", "MirrorDiamondSubFilter"};

std::vector<std::string> svStrobe{ "StrobeEffect", "Blank", "Type","Random Flash","Strobe Red Then Green Then Blue","Flash Black","FlashWhite","StrobeScan", "RGBFlash", "ReinterpretDouble", "DiamondStrobe", "BitwiseXorStrobe","FlashBlackAndWhite", "StrobeBlend", "FibFlash", "ScaleFlash", "FadeStrobe", "AndStrobe", "AndStrobeScale", "AndPixelStrobe", "AndOrXorStrobe", "AndOrXorStrobeScale", "BrightStrobe", "DarkStrobe", "RandomXorOpposite", "StrobeTransform", "RandomStrobe", "OrStrobe", "DifferenceStrobe", "BlackAndWhiteDifferenceStrobe", "DifferenceXor", "DifferenceRand", "HalfNegateStrobe", "RandomStrobeFlash", "GaussianStrobe", "StrobeSort", "GlitchSortStrobe", "StrobeXor", "AlphaMorph", "StrobeXorAndOr", "FlashMedianBlend", "RainbowGlichStrobe", "NegateSwitchStrobe", "StrobeAlphaShuffle","MirrorOrderAlpha", "StrobeNegatePixel", "StrobeNegateInOut", "AlphaStrobeBlend", "StrobeRandomChannel", "MaxRGB", "IncreaseQuick", "StrobeRandomFilter", "MedianStrobe", "MildStrobe", "CannyStrobe", "LaplacianStrobe", "LaplacianStrobeOnOff", "GrayStrobe", "ColorStrobeXor","StrobeRedChannel", "StrobeGreenChannel","StrobeBlueChannel","LightStrobe", "StrobeOnOffRandomChannel", "StrobeLightFlashRandomChannel"};

Expand Down
2 changes: 1 addition & 1 deletion Acid.Cam.v2.OSX/ac.h
Original file line number Diff line number Diff line change
Expand Up @@ -1740,7 +1740,7 @@ namespace ac {
void MedianBlendMultiThreadScale(cv::Mat &frame);
void AcidShuffleMedian(cv::Mat &frame);
void MedianBlendSmoothAlpha(cv::Mat &frame);

void MirrorDiamondSubFilter(cv::Mat &frame);
// #NoFilter
void NoFilter(cv::Mat &frame);
// Alpha blend with original image
Expand Down

0 comments on commit 3408c48

Please sign in to comment.