diff --git a/License.txt b/License.txt old mode 100644 new mode 100755 diff --git a/README.md b/README.md old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite.xcodeproj/project.pbxproj b/examples/BenchmarkSuite/BenchmarkSuite.xcodeproj/project.pbxproj old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/41-picture-frame.png b/examples/BenchmarkSuite/BenchmarkSuite/41-picture-frame.png old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/41-picture-frame@2x.png b/examples/BenchmarkSuite/BenchmarkSuite/41-picture-frame@2x.png old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/46-movie-2.png b/examples/BenchmarkSuite/BenchmarkSuite/46-movie-2.png old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/46-movie-2@2x.png b/examples/BenchmarkSuite/BenchmarkSuite/46-movie-2@2x.png old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/86-camera.png b/examples/BenchmarkSuite/BenchmarkSuite/86-camera.png old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/86-camera@2x.png b/examples/BenchmarkSuite/BenchmarkSuite/86-camera@2x.png old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/BenchmarkAppDelegate.h b/examples/BenchmarkSuite/BenchmarkSuite/BenchmarkAppDelegate.h old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/BenchmarkAppDelegate.m b/examples/BenchmarkSuite/BenchmarkSuite/BenchmarkAppDelegate.m old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/BenchmarkSuite-Info.plist b/examples/BenchmarkSuite/BenchmarkSuite/BenchmarkSuite-Info.plist old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/BenchmarkSuite-Prefix.pch b/examples/BenchmarkSuite/BenchmarkSuite/BenchmarkSuite-Prefix.pch old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/BenchmarkTableViewController.h b/examples/BenchmarkSuite/BenchmarkSuite/BenchmarkTableViewController.h old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/BenchmarkTableViewController.m b/examples/BenchmarkSuite/BenchmarkSuite/BenchmarkTableViewController.m old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/BenchmarkTableViewController.xib b/examples/BenchmarkSuite/BenchmarkSuite/BenchmarkTableViewController.xib old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/ImageFilteringBenchmarkController.h b/examples/BenchmarkSuite/BenchmarkSuite/ImageFilteringBenchmarkController.h old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/ImageFilteringBenchmarkController.m b/examples/BenchmarkSuite/BenchmarkSuite/ImageFilteringBenchmarkController.m old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/VideoFilteringBenchmarkController.h b/examples/BenchmarkSuite/BenchmarkSuite/VideoFilteringBenchmarkController.h old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/VideoFilteringBenchmarkController.m b/examples/BenchmarkSuite/BenchmarkSuite/VideoFilteringBenchmarkController.m old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/VideoFilteringDisplayController.h b/examples/BenchmarkSuite/BenchmarkSuite/VideoFilteringDisplayController.h old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/VideoFilteringDisplayController.m b/examples/BenchmarkSuite/BenchmarkSuite/VideoFilteringDisplayController.m old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/VideoFilteringDisplayController.xib b/examples/BenchmarkSuite/BenchmarkSuite/VideoFilteringDisplayController.xib old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/en.lproj/InfoPlist.strings b/examples/BenchmarkSuite/BenchmarkSuite/en.lproj/InfoPlist.strings old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/BenchmarkSuite/main.m b/examples/BenchmarkSuite/BenchmarkSuite/main.m old mode 100644 new mode 100755 diff --git a/examples/BenchmarkSuite/GlyphishIconLicense.txt b/examples/BenchmarkSuite/GlyphishIconLicense.txt old mode 100644 new mode 100755 diff --git a/examples/ColorObjectTracking/ColorObjectTracking.xcodeproj/project.pbxproj b/examples/ColorObjectTracking/ColorObjectTracking.xcodeproj/project.pbxproj old mode 100644 new mode 100755 diff --git a/examples/ColorObjectTracking/ColorObjectTracking/ColorObjectTracking-Info.plist b/examples/ColorObjectTracking/ColorObjectTracking/ColorObjectTracking-Info.plist old mode 100644 new mode 100755 diff --git a/examples/ColorObjectTracking/ColorObjectTracking/ColorObjectTracking-Prefix.pch b/examples/ColorObjectTracking/ColorObjectTracking/ColorObjectTracking-Prefix.pch old mode 100644 new mode 100755 diff --git a/examples/ColorObjectTracking/ColorObjectTracking/ColorTrackingAppDelegate.h b/examples/ColorObjectTracking/ColorObjectTracking/ColorTrackingAppDelegate.h old mode 100644 new mode 100755 diff --git a/examples/ColorObjectTracking/ColorObjectTracking/ColorTrackingAppDelegate.m b/examples/ColorObjectTracking/ColorObjectTracking/ColorTrackingAppDelegate.m old mode 100644 new mode 100755 diff --git a/examples/ColorObjectTracking/ColorObjectTracking/ColorTrackingViewController.h b/examples/ColorObjectTracking/ColorObjectTracking/ColorTrackingViewController.h old mode 100644 new mode 100755 diff --git a/examples/ColorObjectTracking/ColorObjectTracking/ColorTrackingViewController.m b/examples/ColorObjectTracking/ColorObjectTracking/ColorTrackingViewController.m old mode 100644 new mode 100755 diff --git a/examples/ColorObjectTracking/ColorObjectTracking/PositionColor.fsh b/examples/ColorObjectTracking/ColorObjectTracking/PositionColor.fsh old mode 100644 new mode 100755 diff --git a/examples/ColorObjectTracking/ColorObjectTracking/Threshold.fsh b/examples/ColorObjectTracking/ColorObjectTracking/Threshold.fsh old mode 100644 new mode 100755 diff --git a/examples/ColorObjectTracking/ColorObjectTracking/en.lproj/InfoPlist.strings b/examples/ColorObjectTracking/ColorObjectTracking/en.lproj/InfoPlist.strings old mode 100644 new mode 100755 diff --git a/examples/ColorObjectTracking/ColorObjectTracking/main.m b/examples/ColorObjectTracking/ColorObjectTracking/main.m old mode 100644 new mode 100755 diff --git a/examples/CubeExample/Classes/CubeExampleAppDelegate.h b/examples/CubeExample/Classes/CubeExampleAppDelegate.h old mode 100644 new mode 100755 diff --git a/examples/CubeExample/Classes/CubeExampleAppDelegate.m b/examples/CubeExample/Classes/CubeExampleAppDelegate.m old mode 100644 new mode 100755 diff --git a/examples/CubeExample/Classes/DisplayViewController.h b/examples/CubeExample/Classes/DisplayViewController.h old mode 100644 new mode 100755 diff --git a/examples/CubeExample/Classes/DisplayViewController.m b/examples/CubeExample/Classes/DisplayViewController.m old mode 100644 new mode 100755 diff --git a/examples/CubeExample/Classes/ES2Renderer.h b/examples/CubeExample/Classes/ES2Renderer.h old mode 100644 new mode 100755 diff --git a/examples/CubeExample/Classes/ES2Renderer.m b/examples/CubeExample/Classes/ES2Renderer.m old mode 100644 new mode 100755 diff --git a/examples/CubeExample/Classes/ESRenderer.h b/examples/CubeExample/Classes/ESRenderer.h old mode 100644 new mode 100755 diff --git a/examples/CubeExample/CubeExample-Info.plist b/examples/CubeExample/CubeExample-Info.plist old mode 100644 new mode 100755 diff --git a/examples/CubeExample/CubeExample_Prefix.pch b/examples/CubeExample/CubeExample_Prefix.pch old mode 100644 new mode 100755 diff --git a/examples/CubeExample/Shaders/Shader.fsh b/examples/CubeExample/Shaders/Shader.fsh old mode 100644 new mode 100755 diff --git a/examples/CubeExample/Shaders/Shader.vsh b/examples/CubeExample/Shaders/Shader.vsh old mode 100644 new mode 100755 diff --git a/examples/CubeExample/main.m b/examples/CubeExample/main.m old mode 100644 new mode 100755 diff --git a/examples/FilterShowcase/FilterShowcase.xcodeproj/project.pbxproj b/examples/FilterShowcase/FilterShowcase.xcodeproj/project.pbxproj old mode 100644 new mode 100755 diff --git a/examples/FilterShowcase/FilterShowcase/CustomFilter.fsh b/examples/FilterShowcase/FilterShowcase/CustomFilter.fsh old mode 100644 new mode 100755 diff --git a/examples/FilterShowcase/FilterShowcase/FilterShowcase-Info.plist b/examples/FilterShowcase/FilterShowcase/FilterShowcase-Info.plist old mode 100644 new mode 100755 diff --git a/examples/FilterShowcase/FilterShowcase/FilterShowcase-Prefix.pch b/examples/FilterShowcase/FilterShowcase/FilterShowcase-Prefix.pch old mode 100644 new mode 100755 diff --git a/examples/FilterShowcase/FilterShowcase/SampleConfiguration.plist b/examples/FilterShowcase/FilterShowcase/SampleConfiguration.plist old mode 100644 new mode 100755 diff --git a/examples/FilterShowcase/FilterShowcase/ShowcaseAppDelegate.h b/examples/FilterShowcase/FilterShowcase/ShowcaseAppDelegate.h old mode 100644 new mode 100755 diff --git a/examples/FilterShowcase/FilterShowcase/ShowcaseAppDelegate.m b/examples/FilterShowcase/FilterShowcase/ShowcaseAppDelegate.m old mode 100644 new mode 100755 diff --git a/examples/FilterShowcase/FilterShowcase/ShowcaseFilterListController.h b/examples/FilterShowcase/FilterShowcase/ShowcaseFilterListController.h old mode 100644 new mode 100755 diff --git a/examples/FilterShowcase/FilterShowcase/ShowcaseFilterListController.m b/examples/FilterShowcase/FilterShowcase/ShowcaseFilterListController.m old mode 100644 new mode 100755 diff --git a/examples/FilterShowcase/FilterShowcase/ShowcaseFilterViewController.h b/examples/FilterShowcase/FilterShowcase/ShowcaseFilterViewController.h old mode 100644 new mode 100755 diff --git a/examples/FilterShowcase/FilterShowcase/ShowcaseFilterViewController.m b/examples/FilterShowcase/FilterShowcase/ShowcaseFilterViewController.m old mode 100644 new mode 100755 diff --git a/examples/FilterShowcase/FilterShowcase/ShowcaseFilterViewController.xib b/examples/FilterShowcase/FilterShowcase/ShowcaseFilterViewController.xib old mode 100644 new mode 100755 diff --git a/examples/FilterShowcase/FilterShowcase/en.lproj/InfoPlist.strings b/examples/FilterShowcase/FilterShowcase/en.lproj/InfoPlist.strings old mode 100644 new mode 100755 diff --git a/examples/FilterShowcase/FilterShowcase/main.m b/examples/FilterShowcase/FilterShowcase/main.m old mode 100644 new mode 100755 diff --git a/examples/FilterShowcase/FilterShowcase/mask.png b/examples/FilterShowcase/FilterShowcase/mask.png old mode 100644 new mode 100755 diff --git a/examples/MultiViewFilterExample/MultiViewFilterExample.xcodeproj/project.pbxproj b/examples/MultiViewFilterExample/MultiViewFilterExample.xcodeproj/project.pbxproj old mode 100644 new mode 100755 diff --git a/examples/MultiViewFilterExample/MultiViewFilterExample/MultiViewAppDelegate.h b/examples/MultiViewFilterExample/MultiViewFilterExample/MultiViewAppDelegate.h old mode 100644 new mode 100755 diff --git a/examples/MultiViewFilterExample/MultiViewFilterExample/MultiViewAppDelegate.m b/examples/MultiViewFilterExample/MultiViewFilterExample/MultiViewAppDelegate.m old mode 100644 new mode 100755 diff --git a/examples/MultiViewFilterExample/MultiViewFilterExample/MultiViewFilterExample-Info.plist b/examples/MultiViewFilterExample/MultiViewFilterExample/MultiViewFilterExample-Info.plist old mode 100644 new mode 100755 diff --git a/examples/MultiViewFilterExample/MultiViewFilterExample/MultiViewFilterExample-Prefix.pch b/examples/MultiViewFilterExample/MultiViewFilterExample/MultiViewFilterExample-Prefix.pch old mode 100644 new mode 100755 diff --git a/examples/MultiViewFilterExample/MultiViewFilterExample/MultiViewViewController.h b/examples/MultiViewFilterExample/MultiViewFilterExample/MultiViewViewController.h old mode 100644 new mode 100755 diff --git a/examples/MultiViewFilterExample/MultiViewFilterExample/MultiViewViewController.m b/examples/MultiViewFilterExample/MultiViewFilterExample/MultiViewViewController.m old mode 100644 new mode 100755 diff --git a/examples/MultiViewFilterExample/MultiViewFilterExample/Shader1.fsh b/examples/MultiViewFilterExample/MultiViewFilterExample/Shader1.fsh old mode 100644 new mode 100755 diff --git a/examples/MultiViewFilterExample/MultiViewFilterExample/Shader2.fsh b/examples/MultiViewFilterExample/MultiViewFilterExample/Shader2.fsh old mode 100644 new mode 100755 diff --git a/examples/MultiViewFilterExample/MultiViewFilterExample/en.lproj/InfoPlist.strings b/examples/MultiViewFilterExample/MultiViewFilterExample/en.lproj/InfoPlist.strings old mode 100644 new mode 100755 diff --git a/examples/MultiViewFilterExample/MultiViewFilterExample/main.m b/examples/MultiViewFilterExample/MultiViewFilterExample/main.m old mode 100644 new mode 100755 diff --git a/examples/SimpleImageFilter/SimpleImageFilter.xcodeproj/project.pbxproj b/examples/SimpleImageFilter/SimpleImageFilter.xcodeproj/project.pbxproj old mode 100644 new mode 100755 diff --git a/examples/SimpleImageFilter/SimpleImageFilter/Lambeau.jpg b/examples/SimpleImageFilter/SimpleImageFilter/Lambeau.jpg old mode 100644 new mode 100755 diff --git a/examples/SimpleImageFilter/SimpleImageFilter/SimpleImageAppDelegate.h b/examples/SimpleImageFilter/SimpleImageFilter/SimpleImageAppDelegate.h old mode 100644 new mode 100755 diff --git a/examples/SimpleImageFilter/SimpleImageFilter/SimpleImageAppDelegate.m b/examples/SimpleImageFilter/SimpleImageFilter/SimpleImageAppDelegate.m old mode 100644 new mode 100755 diff --git a/examples/SimpleImageFilter/SimpleImageFilter/SimpleImageFilter-Info.plist b/examples/SimpleImageFilter/SimpleImageFilter/SimpleImageFilter-Info.plist old mode 100644 new mode 100755 diff --git a/examples/SimpleImageFilter/SimpleImageFilter/SimpleImageFilter-Prefix.pch b/examples/SimpleImageFilter/SimpleImageFilter/SimpleImageFilter-Prefix.pch old mode 100644 new mode 100755 diff --git a/examples/SimpleImageFilter/SimpleImageFilter/SimpleImageViewController.h b/examples/SimpleImageFilter/SimpleImageFilter/SimpleImageViewController.h old mode 100644 new mode 100755 diff --git a/examples/SimpleImageFilter/SimpleImageFilter/SimpleImageViewController.m b/examples/SimpleImageFilter/SimpleImageFilter/SimpleImageViewController.m old mode 100644 new mode 100755 diff --git a/examples/SimpleImageFilter/SimpleImageFilter/WID-small.jpg b/examples/SimpleImageFilter/SimpleImageFilter/WID-small.jpg old mode 100644 new mode 100755 diff --git a/examples/SimpleImageFilter/SimpleImageFilter/en.lproj/InfoPlist.strings b/examples/SimpleImageFilter/SimpleImageFilter/en.lproj/InfoPlist.strings old mode 100644 new mode 100755 diff --git a/examples/SimpleImageFilter/SimpleImageFilter/main.m b/examples/SimpleImageFilter/SimpleImageFilter/main.m old mode 100644 new mode 100755 diff --git a/examples/SimplePhotoFilter/SimplePhotoFilter.xcodeproj/project.pbxproj b/examples/SimplePhotoFilter/SimplePhotoFilter.xcodeproj/project.pbxproj old mode 100644 new mode 100755 diff --git a/examples/SimplePhotoFilter/SimplePhotoFilter/PhotoAppDelegate.h b/examples/SimplePhotoFilter/SimplePhotoFilter/PhotoAppDelegate.h old mode 100644 new mode 100755 diff --git a/examples/SimplePhotoFilter/SimplePhotoFilter/PhotoAppDelegate.m b/examples/SimplePhotoFilter/SimplePhotoFilter/PhotoAppDelegate.m old mode 100644 new mode 100755 diff --git a/examples/SimplePhotoFilter/SimplePhotoFilter/PhotoViewController.h b/examples/SimplePhotoFilter/SimplePhotoFilter/PhotoViewController.h old mode 100644 new mode 100755 diff --git a/examples/SimplePhotoFilter/SimplePhotoFilter/PhotoViewController.m b/examples/SimplePhotoFilter/SimplePhotoFilter/PhotoViewController.m old mode 100644 new mode 100755 diff --git a/examples/SimplePhotoFilter/SimplePhotoFilter/SimplePhotoFilter-Info.plist b/examples/SimplePhotoFilter/SimplePhotoFilter/SimplePhotoFilter-Info.plist old mode 100644 new mode 100755 diff --git a/examples/SimplePhotoFilter/SimplePhotoFilter/SimplePhotoFilter-Prefix.pch b/examples/SimplePhotoFilter/SimplePhotoFilter/SimplePhotoFilter-Prefix.pch old mode 100644 new mode 100755 diff --git a/examples/SimplePhotoFilter/SimplePhotoFilter/en.lproj/InfoPlist.strings b/examples/SimplePhotoFilter/SimplePhotoFilter/en.lproj/InfoPlist.strings old mode 100644 new mode 100755 diff --git a/examples/SimplePhotoFilter/SimplePhotoFilter/main.m b/examples/SimplePhotoFilter/SimplePhotoFilter/main.m old mode 100644 new mode 100755 diff --git a/examples/SimpleVideoFileFilter/SimpleVideoFileFilter.xcodeproj/project.pbxproj b/examples/SimpleVideoFileFilter/SimpleVideoFileFilter.xcodeproj/project.pbxproj old mode 100644 new mode 100755 diff --git a/examples/SimpleVideoFileFilter/SimpleVideoFileFilter/SimpleVideoFileFilter-Info.plist b/examples/SimpleVideoFileFilter/SimpleVideoFileFilter/SimpleVideoFileFilter-Info.plist old mode 100644 new mode 100755 diff --git a/examples/SimpleVideoFileFilter/SimpleVideoFileFilter/SimpleVideoFileFilter-Prefix.pch b/examples/SimpleVideoFileFilter/SimpleVideoFileFilter/SimpleVideoFileFilter-Prefix.pch old mode 100644 new mode 100755 diff --git a/examples/SimpleVideoFileFilter/SimpleVideoFileFilter/SimpleVideoFileFilterAppDelegate.h b/examples/SimpleVideoFileFilter/SimpleVideoFileFilter/SimpleVideoFileFilterAppDelegate.h old mode 100644 new mode 100755 diff --git a/examples/SimpleVideoFileFilter/SimpleVideoFileFilter/SimpleVideoFileFilterAppDelegate.m b/examples/SimpleVideoFileFilter/SimpleVideoFileFilter/SimpleVideoFileFilterAppDelegate.m old mode 100644 new mode 100755 diff --git a/examples/SimpleVideoFileFilter/SimpleVideoFileFilter/SimpleVideoFileFilterViewController.h b/examples/SimpleVideoFileFilter/SimpleVideoFileFilter/SimpleVideoFileFilterViewController.h old mode 100644 new mode 100755 diff --git a/examples/SimpleVideoFileFilter/SimpleVideoFileFilter/SimpleVideoFileFilterViewController.m b/examples/SimpleVideoFileFilter/SimpleVideoFileFilter/SimpleVideoFileFilterViewController.m old mode 100644 new mode 100755 diff --git a/examples/SimpleVideoFileFilter/SimpleVideoFileFilter/SimpleVideoFileFilterViewController.xib b/examples/SimpleVideoFileFilter/SimpleVideoFileFilter/SimpleVideoFileFilterViewController.xib old mode 100644 new mode 100755 diff --git a/examples/SimpleVideoFileFilter/SimpleVideoFileFilter/en.lproj/InfoPlist.strings b/examples/SimpleVideoFileFilter/SimpleVideoFileFilter/en.lproj/InfoPlist.strings old mode 100644 new mode 100755 diff --git a/examples/SimpleVideoFileFilter/SimpleVideoFileFilter/main.m b/examples/SimpleVideoFileFilter/SimpleVideoFileFilter/main.m old mode 100644 new mode 100755 diff --git a/examples/SimpleVideoFilter/SimpleVideoFilter.xcodeproj/project.pbxproj b/examples/SimpleVideoFilter/SimpleVideoFilter.xcodeproj/project.pbxproj old mode 100644 new mode 100755 diff --git a/examples/SimpleVideoFilter/SimpleVideoFilter/SimpleVideoFilter-Info.plist b/examples/SimpleVideoFilter/SimpleVideoFilter/SimpleVideoFilter-Info.plist old mode 100644 new mode 100755 diff --git a/examples/SimpleVideoFilter/SimpleVideoFilter/SimpleVideoFilter-Prefix.pch b/examples/SimpleVideoFilter/SimpleVideoFilter/SimpleVideoFilter-Prefix.pch old mode 100644 new mode 100755 diff --git a/examples/SimpleVideoFilter/SimpleVideoFilter/SimpleVideoFilterAppDelegate.h b/examples/SimpleVideoFilter/SimpleVideoFilter/SimpleVideoFilterAppDelegate.h old mode 100644 new mode 100755 diff --git a/examples/SimpleVideoFilter/SimpleVideoFilter/SimpleVideoFilterAppDelegate.m b/examples/SimpleVideoFilter/SimpleVideoFilter/SimpleVideoFilterAppDelegate.m old mode 100644 new mode 100755 diff --git a/examples/SimpleVideoFilter/SimpleVideoFilter/SimpleVideoFilterViewController.h b/examples/SimpleVideoFilter/SimpleVideoFilter/SimpleVideoFilterViewController.h old mode 100644 new mode 100755 diff --git a/examples/SimpleVideoFilter/SimpleVideoFilter/SimpleVideoFilterViewController.m b/examples/SimpleVideoFilter/SimpleVideoFilter/SimpleVideoFilterViewController.m old mode 100644 new mode 100755 diff --git a/examples/SimpleVideoFilter/SimpleVideoFilter/SimpleVideoFilterViewController.xib b/examples/SimpleVideoFilter/SimpleVideoFilter/SimpleVideoFilterViewController.xib old mode 100644 new mode 100755 diff --git a/examples/SimpleVideoFilter/SimpleVideoFilter/en.lproj/InfoPlist.strings b/examples/SimpleVideoFilter/SimpleVideoFilter/en.lproj/InfoPlist.strings old mode 100644 new mode 100755 diff --git a/examples/SimpleVideoFilter/SimpleVideoFilter/main.m b/examples/SimpleVideoFilter/SimpleVideoFilter/main.m old mode 100644 new mode 100755 diff --git a/framework/GPUImage.xcodeproj/project.pbxproj b/framework/GPUImage.xcodeproj/project.pbxproj old mode 100644 new mode 100755 index ac57eced0..b1e89a387 --- a/framework/GPUImage.xcodeproj/project.pbxproj +++ b/framework/GPUImage.xcodeproj/project.pbxproj @@ -78,6 +78,8 @@ BCAD0982154F7B2800278521 /* GPUImageHarrisCornerDetectionFilter.m in Sources */ = {isa = PBXBuildFile; fileRef = BCAD0980154F7B2800278521 /* GPUImageHarrisCornerDetectionFilter.m */; }; BCAD0985154F931C00278521 /* GPUImageAlphaBlendFilter.h in Headers */ = {isa = PBXBuildFile; fileRef = BCAD0983154F931C00278521 /* GPUImageAlphaBlendFilter.h */; }; BCAD0986154F931C00278521 /* GPUImageAlphaBlendFilter.m in Sources */ = {isa = PBXBuildFile; fileRef = BCAD0984154F931C00278521 /* GPUImageAlphaBlendFilter.m */; }; + BCAD099F15506F6F00278521 /* GPUImageNonMaximumSuppressionFilter.h in Headers */ = {isa = PBXBuildFile; fileRef = BCAD099D15506F6E00278521 /* GPUImageNonMaximumSuppressionFilter.h */; }; + BCAD09A015506F6F00278521 /* GPUImageNonMaximumSuppressionFilter.m in Sources */ = {isa = PBXBuildFile; fileRef = BCAD099E15506F6E00278521 /* GPUImageNonMaximumSuppressionFilter.m */; }; BCB5DE0D14E87F32000AF3C2 /* GPUImagePixellateFilter.h in Headers */ = {isa = PBXBuildFile; fileRef = BCB5DE0B14E87F32000AF3C2 /* GPUImagePixellateFilter.h */; }; BCB5DE0E14E87F32000AF3C2 /* GPUImagePixellateFilter.m in Sources */ = {isa = PBXBuildFile; fileRef = BCB5DE0C14E87F32000AF3C2 /* GPUImagePixellateFilter.m */; }; BCB5E75C14E2086300701302 /* GPUImageView.h in Headers */ = {isa = PBXBuildFile; fileRef = BCB5E75A14E2086300701302 /* GPUImageView.h */; }; @@ -176,11 +178,6 @@ BCF3D723153E0E0C009A1FE5 /* GPUImageThresholdEdgeDetection.m in Sources */ = {isa = PBXBuildFile; fileRef = BCF3D721153E0E0B009A1FE5 /* GPUImageThresholdEdgeDetection.m */; }; BCF3D730153F0D6F009A1FE5 /* GPUImageSmoothToonFilter.h in Headers */ = {isa = PBXBuildFile; fileRef = BCF3D72E153F0D6E009A1FE5 /* GPUImageSmoothToonFilter.h */; }; BCF3D731153F0D6F009A1FE5 /* GPUImageSmoothToonFilter.m in Sources */ = {isa = PBXBuildFile; fileRef = BCF3D72F153F0D6F009A1FE5 /* GPUImageSmoothToonFilter.m */; }; - F2C19D6E154FC53A00857A72 /* GPUImageMosaicFilter.h in Headers */ = {isa = PBXBuildFile; fileRef = F2C19D6C154FC53A00857A72 /* GPUImageMosaicFilter.h */; }; - F2C19D6F154FC53A00857A72 /* GPUImageMosaicFilter.m in Sources */ = {isa = PBXBuildFile; fileRef = F2C19D6D154FC53A00857A72 /* GPUImageMosaicFilter.m */; }; - F2C19D74154FC55000857A72 /* squares.png in Resources */ = {isa = PBXBuildFile; fileRef = F2C19D71154FC55000857A72 /* squares.png */; }; - F2C19D75154FC55000857A72 /* circles.png in Resources */ = {isa = PBXBuildFile; fileRef = F2C19D72154FC55000857A72 /* circles.png */; }; - F2C19D76154FC55000857A72 /* photo 4.JPG in Resources */ = {isa = PBXBuildFile; fileRef = F2C19D73154FC55000857A72 /* photo 4.JPG */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -269,6 +266,8 @@ BCAD0980154F7B2800278521 /* GPUImageHarrisCornerDetectionFilter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = GPUImageHarrisCornerDetectionFilter.m; path = Source/GPUImageHarrisCornerDetectionFilter.m; sourceTree = SOURCE_ROOT; }; BCAD0983154F931C00278521 /* GPUImageAlphaBlendFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GPUImageAlphaBlendFilter.h; path = Source/GPUImageAlphaBlendFilter.h; sourceTree = SOURCE_ROOT; }; BCAD0984154F931C00278521 /* GPUImageAlphaBlendFilter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = GPUImageAlphaBlendFilter.m; path = Source/GPUImageAlphaBlendFilter.m; sourceTree = SOURCE_ROOT; }; + BCAD099D15506F6E00278521 /* GPUImageNonMaximumSuppressionFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GPUImageNonMaximumSuppressionFilter.h; path = Source/GPUImageNonMaximumSuppressionFilter.h; sourceTree = SOURCE_ROOT; }; + BCAD099E15506F6E00278521 /* GPUImageNonMaximumSuppressionFilter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = GPUImageNonMaximumSuppressionFilter.m; path = Source/GPUImageNonMaximumSuppressionFilter.m; sourceTree = SOURCE_ROOT; }; BCB5DE0B14E87F32000AF3C2 /* GPUImagePixellateFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GPUImagePixellateFilter.h; path = Source/GPUImagePixellateFilter.h; sourceTree = SOURCE_ROOT; }; BCB5DE0C14E87F32000AF3C2 /* GPUImagePixellateFilter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = GPUImagePixellateFilter.m; path = Source/GPUImagePixellateFilter.m; sourceTree = SOURCE_ROOT; }; BCB5E75A14E2086300701302 /* GPUImageView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GPUImageView.h; path = Source/GPUImageView.h; sourceTree = SOURCE_ROOT; }; @@ -366,11 +365,6 @@ BCF3D721153E0E0B009A1FE5 /* GPUImageThresholdEdgeDetection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = GPUImageThresholdEdgeDetection.m; path = Source/GPUImageThresholdEdgeDetection.m; sourceTree = SOURCE_ROOT; }; BCF3D72E153F0D6E009A1FE5 /* GPUImageSmoothToonFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GPUImageSmoothToonFilter.h; path = Source/GPUImageSmoothToonFilter.h; sourceTree = SOURCE_ROOT; }; BCF3D72F153F0D6F009A1FE5 /* GPUImageSmoothToonFilter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = GPUImageSmoothToonFilter.m; path = Source/GPUImageSmoothToonFilter.m; sourceTree = SOURCE_ROOT; }; - F2C19D6C154FC53A00857A72 /* GPUImageMosaicFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GPUImageMosaicFilter.h; path = "../../../../../Programming/iPhone/Face Esplode/Face Esplode/GPUImageMosaicFilter.h"; sourceTree = ""; }; - F2C19D6D154FC53A00857A72 /* GPUImageMosaicFilter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = GPUImageMosaicFilter.m; path = "../../../../../Programming/iPhone/Face Esplode/Face Esplode/GPUImageMosaicFilter.m"; sourceTree = ""; }; - F2C19D71154FC55000857A72 /* squares.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = squares.png; path = "../../../../../Programming/iPhone/Face Esplode/Face Esplode/squares.png"; sourceTree = ""; }; - F2C19D72154FC55000857A72 /* circles.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = circles.png; path = "../../../../../Programming/iPhone/Face Esplode/Face Esplode/circles.png"; sourceTree = ""; }; - F2C19D73154FC55000857A72 /* photo 4.JPG */ = {isa = PBXFileReference; lastKnownFileType = image.jpeg; name = "photo 4.JPG"; path = "../../../../../Programming/iPhone/Face Esplode/Face Esplode/photo 4.JPG"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -607,8 +601,8 @@ BCF3D70E153DF9E6009A1FE5 /* GPUImageEmbossFilter.m */, 83AE9FCB1540E92800F7FC13 /* GPUImageMaskFilter.h */, 83AE9FCC1540E92800F7FC13 /* GPUImageMaskFilter.m */, - F2C19D6C154FC53A00857A72 /* GPUImageMosaicFilter.h */, - F2C19D6D154FC53A00857A72 /* GPUImageMosaicFilter.m */, + BCAD099D15506F6E00278521 /* GPUImageNonMaximumSuppressionFilter.h */, + BCAD099E15506F6E00278521 /* GPUImageNonMaximumSuppressionFilter.m */, ); name = "Image processing"; sourceTree = ""; @@ -650,9 +644,6 @@ BCF1A33914DDB1EC00852800 /* GPUImage */ = { isa = PBXGroup; children = ( - F2C19D71154FC55000857A72 /* squares.png */, - F2C19D72154FC55000857A72 /* circles.png */, - F2C19D73154FC55000857A72 /* photo 4.JPG */, BC245DBF14DDBCF5009FE7EB /* GPUImage.h */, BCB5E79214E3275100701302 /* GLProgram.h */, BCB5E79314E3275200701302 /* GLProgram.m */, @@ -780,12 +771,9 @@ BCC11D72154B44DC0044F5A0 /* GPUImageHistogramGenerator.h in Headers */, BCAD0978154F39CA00278521 /* GPUImagePrewittEdgeDetectionFilter.h in Headers */, BCAD097D154F3CB000278521 /* GPUImageXYDerivativeFilter.h in Headers */, -<<<<<<< HEAD - F2C19D6E154FC53A00857A72 /* GPUImageMosaicFilter.h in Headers */, -======= BCAD0981154F7B2800278521 /* GPUImageHarrisCornerDetectionFilter.h in Headers */, BCAD0985154F931C00278521 /* GPUImageAlphaBlendFilter.h in Headers */, ->>>>>>> upstream/master + BCAD099F15506F6F00278521 /* GPUImageNonMaximumSuppressionFilter.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -861,9 +849,6 @@ buildActionMask = 2147483647; files = ( BCF1A35214DDB1EC00852800 /* InfoPlist.strings in Resources */, - F2C19D74154FC55000857A72 /* squares.png in Resources */, - F2C19D75154FC55000857A72 /* circles.png in Resources */, - F2C19D76154FC55000857A72 /* photo 4.JPG in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -966,12 +951,9 @@ BCC11D73154B44DC0044F5A0 /* GPUImageHistogramGenerator.m in Sources */, BCAD0979154F39CA00278521 /* GPUImagePrewittEdgeDetectionFilter.m in Sources */, BCAD097E154F3CB000278521 /* GPUImageXYDerivativeFilter.m in Sources */, -<<<<<<< HEAD - F2C19D6F154FC53A00857A72 /* GPUImageMosaicFilter.m in Sources */, -======= BCAD0982154F7B2800278521 /* GPUImageHarrisCornerDetectionFilter.m in Sources */, BCAD0986154F931C00278521 /* GPUImageAlphaBlendFilter.m in Sources */, ->>>>>>> upstream/master + BCAD09A015506F6F00278521 /* GPUImageNonMaximumSuppressionFilter.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/framework/GPUImageTests/GPUImageTests-Info.plist b/framework/GPUImageTests/GPUImageTests-Info.plist old mode 100644 new mode 100755 diff --git a/framework/GPUImageTests/GPUImageTests.h b/framework/GPUImageTests/GPUImageTests.h old mode 100644 new mode 100755 diff --git a/framework/GPUImageTests/GPUImageTests.m b/framework/GPUImageTests/GPUImageTests.m old mode 100644 new mode 100755 diff --git a/framework/GPUImageTests/en.lproj/InfoPlist.strings b/framework/GPUImageTests/en.lproj/InfoPlist.strings old mode 100644 new mode 100755 diff --git a/framework/Source/GLProgram.h b/framework/Source/GLProgram.h old mode 100644 new mode 100755 diff --git a/framework/Source/GLProgram.m b/framework/Source/GLProgram.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImage-Prefix.pch b/framework/Source/GPUImage-Prefix.pch old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImage.h b/framework/Source/GPUImage.h old mode 100644 new mode 100755 index 1b887c3c6..30a7a3a8c --- a/framework/Source/GPUImage.h +++ b/framework/Source/GPUImage.h @@ -78,3 +78,4 @@ #import "GPUImageXYDerivativeFilter.h" #import "GPUImageHarrisCornerDetectionFilter.h" #import "GPUImageAlphaBlendFilter.h" +#import "GPUImageNonMaximumSuppressionFilter.h" diff --git a/framework/Source/GPUImage3x3ConvolutionFilter.h b/framework/Source/GPUImage3x3ConvolutionFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImage3x3ConvolutionFilter.m b/framework/Source/GPUImage3x3ConvolutionFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageAdaptiveThresholdFilter.h b/framework/Source/GPUImageAdaptiveThresholdFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageAdaptiveThresholdFilter.m b/framework/Source/GPUImageAdaptiveThresholdFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageAlphaBlendFilter.h b/framework/Source/GPUImageAlphaBlendFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageAlphaBlendFilter.m b/framework/Source/GPUImageAlphaBlendFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageBoxBlurFilter.h b/framework/Source/GPUImageBoxBlurFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageBoxBlurFilter.m b/framework/Source/GPUImageBoxBlurFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageBrightnessFilter.h b/framework/Source/GPUImageBrightnessFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageBrightnessFilter.m b/framework/Source/GPUImageBrightnessFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageBulgeDistortionFilter.h b/framework/Source/GPUImageBulgeDistortionFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageBulgeDistortionFilter.m b/framework/Source/GPUImageBulgeDistortionFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageCGAColorspaceFilter.h b/framework/Source/GPUImageCGAColorspaceFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageCGAColorspaceFilter.m b/framework/Source/GPUImageCGAColorspaceFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageCannyEdgeDetectionFilter.h b/framework/Source/GPUImageCannyEdgeDetectionFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageCannyEdgeDetectionFilter.m b/framework/Source/GPUImageCannyEdgeDetectionFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageChromaKeyBlendFilter.h b/framework/Source/GPUImageChromaKeyBlendFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageChromaKeyBlendFilter.m b/framework/Source/GPUImageChromaKeyBlendFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageColorBurnBlendFilter.h b/framework/Source/GPUImageColorBurnBlendFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageColorBurnBlendFilter.m b/framework/Source/GPUImageColorBurnBlendFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageColorDodgeBlendFilter.h b/framework/Source/GPUImageColorDodgeBlendFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageColorDodgeBlendFilter.m b/framework/Source/GPUImageColorDodgeBlendFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageColorInvertFilter.h b/framework/Source/GPUImageColorInvertFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageColorInvertFilter.m b/framework/Source/GPUImageColorInvertFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageColorMatrixFilter.h b/framework/Source/GPUImageColorMatrixFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageColorMatrixFilter.m b/framework/Source/GPUImageColorMatrixFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageContrastFilter.h b/framework/Source/GPUImageContrastFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageContrastFilter.m b/framework/Source/GPUImageContrastFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageCropFilter.h b/framework/Source/GPUImageCropFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageCropFilter.m b/framework/Source/GPUImageCropFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageCrosshatchFilter.h b/framework/Source/GPUImageCrosshatchFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageCrosshatchFilter.m b/framework/Source/GPUImageCrosshatchFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageDarkenBlendFilter.h b/framework/Source/GPUImageDarkenBlendFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageDarkenBlendFilter.m b/framework/Source/GPUImageDarkenBlendFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageDifferenceBlendFilter.h b/framework/Source/GPUImageDifferenceBlendFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageDifferenceBlendFilter.m b/framework/Source/GPUImageDifferenceBlendFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageDissolveBlendFilter.h b/framework/Source/GPUImageDissolveBlendFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageDissolveBlendFilter.m b/framework/Source/GPUImageDissolveBlendFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageEmbossFilter.h b/framework/Source/GPUImageEmbossFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageEmbossFilter.m b/framework/Source/GPUImageEmbossFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageExclusionBlendFilter.h b/framework/Source/GPUImageExclusionBlendFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageExclusionBlendFilter.m b/framework/Source/GPUImageExclusionBlendFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageExposureFilter.h b/framework/Source/GPUImageExposureFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageExposureFilter.m b/framework/Source/GPUImageExposureFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageFastBlurFilter.h b/framework/Source/GPUImageFastBlurFilter.h old mode 100644 new mode 100755 index 85b5e88b7..c351d7e45 --- a/framework/Source/GPUImageFastBlurFilter.h +++ b/framework/Source/GPUImageFastBlurFilter.h @@ -2,7 +2,7 @@ @interface GPUImageFastBlurFilter : GPUImageTwoPassFilter { - GLint verticalPassTexelWidthOffsetUniform, verticalPassTexelHeightOffsetUniform, horizontalPassTexelWidthOffsetUniform, horizontalPassTexelHeightOffsetUniform, blurSizeUniform; + GLint verticalPassTexelWidthOffsetUniform, verticalPassTexelHeightOffsetUniform, horizontalPassTexelWidthOffsetUniform, horizontalPassTexelHeightOffsetUniform, firstBlurSizeUniform, secondBlurSizeUniform; } // The number of times to sequentially blur the incoming image. The more passes, the slower the filter. diff --git a/framework/Source/GPUImageFastBlurFilter.m b/framework/Source/GPUImageFastBlurFilter.m old mode 100644 new mode 100755 index dca0fceab..c7d00925b --- a/framework/Source/GPUImageFastBlurFilter.m +++ b/framework/Source/GPUImageFastBlurFilter.m @@ -78,12 +78,12 @@ - (id)init; verticalPassTexelWidthOffsetUniform = [filterProgram uniformIndex:@"texelWidthOffset"]; verticalPassTexelHeightOffsetUniform = [filterProgram uniformIndex:@"texelHeightOffset"]; + firstBlurSizeUniform = [filterProgram uniformIndex:@"blurSize"]; horizontalPassTexelWidthOffsetUniform = [secondFilterProgram uniformIndex:@"texelWidthOffset"]; horizontalPassTexelHeightOffsetUniform = [secondFilterProgram uniformIndex:@"texelHeightOffset"]; - + secondBlurSizeUniform = [secondFilterProgram uniformIndex:@"blurSize"]; - blurSizeUniform = [filterProgram uniformIndex:@"blurSize"]; self.blurSize = 1.0; return self; @@ -123,7 +123,10 @@ - (void)setBlurSize:(CGFloat)newValue; [GPUImageOpenGLESContext useImageProcessingContext]; [filterProgram use]; - glUniform1f(blurSizeUniform, _blurSize); + glUniform1f(firstBlurSizeUniform, _blurSize); + + [secondFilterProgram use]; + glUniform1f(secondBlurSizeUniform, _blurSize); } @end diff --git a/framework/Source/GPUImageFilter.h b/framework/Source/GPUImageFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageFilter.m b/framework/Source/GPUImageFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageFilterGroup.h b/framework/Source/GPUImageFilterGroup.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageFilterGroup.m b/framework/Source/GPUImageFilterGroup.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageFilterPipeline.h b/framework/Source/GPUImageFilterPipeline.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageFilterPipeline.m b/framework/Source/GPUImageFilterPipeline.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageGammaFilter.h b/framework/Source/GPUImageGammaFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageGammaFilter.m b/framework/Source/GPUImageGammaFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageGaussianBlurFilter.h b/framework/Source/GPUImageGaussianBlurFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageGaussianBlurFilter.m b/framework/Source/GPUImageGaussianBlurFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageGaussianSelectiveBlurFilter.h b/framework/Source/GPUImageGaussianSelectiveBlurFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageGaussianSelectiveBlurFilter.m b/framework/Source/GPUImageGaussianSelectiveBlurFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageGrayscaleFilter.h b/framework/Source/GPUImageGrayscaleFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageGrayscaleFilter.m b/framework/Source/GPUImageGrayscaleFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageHardLightBlendFilter.h b/framework/Source/GPUImageHardLightBlendFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageHardLightBlendFilter.m b/framework/Source/GPUImageHardLightBlendFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageHarrisCornerDetectionFilter.h b/framework/Source/GPUImageHarrisCornerDetectionFilter.h old mode 100644 new mode 100755 index 66243fbbf..2435b4c57 --- a/framework/Source/GPUImageHarrisCornerDetectionFilter.h +++ b/framework/Source/GPUImageHarrisCornerDetectionFilter.h @@ -4,15 +4,15 @@ @class GPUImageXYDerivativeFilter; @class GPUImageGrayscaleFilter; @class GPUImageFastBlurFilter; +@class GPUImageNonMaximumSuppressionFilter; @interface GPUImageHarrisCornerDetectionFilter : GPUImageFilterGroup { - GPUImageGrayscaleFilter *luminanceFilter; GPUImageXYDerivativeFilter *derivativeFilter; // GPUImageGaussianBlurFilter *blurFilter; - GPUImageFastBlurFilter *blurFilter; + GPUImageFastBlurFilter *preblurFilter, *blurFilter; GPUImageFilter *harrisCornerDetectionFilter; - // Non maximum suppression filter + GPUImageNonMaximumSuppressionFilter *nonMaximumSuppressionFilter; GPUImageFilter *simpleThresholdFilter; } // A multiplier for the underlying blur size, ranging from 0.0 on up, with a default of 1.0 diff --git a/framework/Source/GPUImageHarrisCornerDetectionFilter.m b/framework/Source/GPUImageHarrisCornerDetectionFilter.m old mode 100644 new mode 100755 index 31a2ab8c4..7e5644040 --- a/framework/Source/GPUImageHarrisCornerDetectionFilter.m +++ b/framework/Source/GPUImageHarrisCornerDetectionFilter.m @@ -4,6 +4,7 @@ #import "GPUImageXYDerivativeFilter.h" #import "GPUImageGrayscaleFilter.h" #import "GPUImageFastBlurFilter.h" +#import "GPUImageNonMaximumSuppressionFilter.h" // This is the Harris corner detector, as described in // C. Harris and M. Stephens. A Combined Corner and Edge Detector. Proc. Alvey Vision Conf., Univ. Manchester, pp. 147-151, 1988. @@ -16,7 +17,7 @@ @implementation GPUImageHarrisCornerDetectionFilter uniform sampler2D inputImageTexture; - const mediump float harrisConstant = 0.01; + const mediump float harrisConstant = 0.04; void main() { @@ -31,7 +32,8 @@ void main() // Original Harris detector // highp float harrisIntensity = derivativeElements.x * derivativeElements.y - (derivativeElements.z * derivativeElements.z) - harrisConstant * derivativeSum * derivativeSum; - gl_FragColor = vec4(vec3(harrisIntensity * 8.0), 1.0); + gl_FragColor = vec4(vec3(harrisIntensity * 10.0), 1.0); +// gl_FragColor = vec4(derivativeElements, 1.0); } ); @@ -41,7 +43,7 @@ void main() uniform sampler2D inputImageTexture; - const lowp float threshold = 0.2; + const lowp float threshold = 0.10; void main() { @@ -50,6 +52,8 @@ void main() lowp float thresholdValue = step(threshold, intensity); gl_FragColor = vec4(thresholdValue, 0.0, 0.0, thresholdValue); +// gl_FragColor = vec4(intensity, intensity, intensity, 1.0); +// gl_FragColor = vec4(intensity, 0.0, 0.0, intensity); } ); @@ -62,43 +66,47 @@ - (id)init; { return nil; } - - // First pass: reduce to luminance - luminanceFilter = [[GPUImageGrayscaleFilter alloc] init]; - [self addFilter:luminanceFilter]; - - // Second pass: take the derivative of the luminance texture + +// preblurFilter = [[GPUImageFastBlurFilter alloc] init]; +// [self addFilter:preblurFilter]; + + // First pass: reduce to luminance and take the derivative of the luminance texture derivativeFilter = [[GPUImageXYDerivativeFilter alloc] init]; - derivativeFilter.imageWidthFactor = 256.0; - derivativeFilter.imageHeightFactor = 256.0; +// derivativeFilter.imageWidthFactor = 256.0; +// derivativeFilter.imageHeightFactor = 256.0; [self addFilter:derivativeFilter]; - // Third pass: blur the derivative + // Second pass: blur the derivative // blurFilter = [[GPUImageGaussianBlurFilter alloc] init]; blurFilter = [[GPUImageFastBlurFilter alloc] init]; [self addFilter:blurFilter]; - // Fourth pass: apply the Harris corner detection calculation + // Third pass: apply the Harris corner detection calculation harrisCornerDetectionFilter = [[GPUImageFilter alloc] initWithFragmentShaderFromString:kGPUImageHarrisCornerDetectionFragmentShaderString]; [self addFilter:harrisCornerDetectionFilter]; - // TODO: Non-maximum suppression filter here + // Fourth pass: apply non-maximum suppression to find the local maxima +// nonMaximumSuppressionFilter = [[GPUImageNonMaximumSuppressionFilter alloc] init]; +// [self addFilter:nonMaximumSuppressionFilter]; // Fifth pass: threshold the result simpleThresholdFilter = [[GPUImageFilter alloc] initWithFragmentShaderFromString:kGPUImageSimpleThresholdFragmentShaderString]; [self addFilter:simpleThresholdFilter]; - [luminanceFilter addTarget:derivativeFilter]; +// [preblurFilter addTarget:luminanceFilter]; [derivativeFilter addTarget:blurFilter]; [blurFilter addTarget:harrisCornerDetectionFilter]; +// [harrisCornerDetectionFilter addTarget:nonMaximumSuppressionFilter]; +// [nonMaximumSuppressionFilter addTarget:simpleThresholdFilter]; [harrisCornerDetectionFilter addTarget:simpleThresholdFilter]; - self.initialFilters = [NSArray arrayWithObjects:luminanceFilter, nil]; +// self.initialFilters = [NSArray arrayWithObjects:preblurFilter, nil]; + self.initialFilters = [NSArray arrayWithObjects:derivativeFilter, nil]; // self.terminalFilter = harrisCornerDetectionFilter; self.terminalFilter = simpleThresholdFilter; // self.intensity = 1.0; - self.blurSize = 1.5; + self.blurSize = 1.0; return self; } diff --git a/framework/Source/GPUImageHazeFilter.h b/framework/Source/GPUImageHazeFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageHazeFilter.m b/framework/Source/GPUImageHazeFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageHistogramFilter.h b/framework/Source/GPUImageHistogramFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageHistogramFilter.m b/framework/Source/GPUImageHistogramFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageHistogramGenerator.h b/framework/Source/GPUImageHistogramGenerator.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageHistogramGenerator.m b/framework/Source/GPUImageHistogramGenerator.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageKuwaharaFilter.h b/framework/Source/GPUImageKuwaharaFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageKuwaharaFilter.m b/framework/Source/GPUImageKuwaharaFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageLightenBlendFilter.h b/framework/Source/GPUImageLightenBlendFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageLightenBlendFilter.m b/framework/Source/GPUImageLightenBlendFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageLuminanceThresholdFilter.h b/framework/Source/GPUImageLuminanceThresholdFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageLuminanceThresholdFilter.m b/framework/Source/GPUImageLuminanceThresholdFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageMaskFilter.h b/framework/Source/GPUImageMaskFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageMaskFilter.m b/framework/Source/GPUImageMaskFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageMosaicFilter.h b/framework/Source/GPUImageMosaicFilter.h deleted file mode 100644 index 2fa7d4741..000000000 --- a/framework/Source/GPUImageMosaicFilter.h +++ /dev/null @@ -1,26 +0,0 @@ -// -// GPUImageMosaicFilter.h -// -// Created by Jacob Gundersen on 3/29/12. -// -// This filter takes an input tileset, the tiles must ascend in luminance -// It looks at the input image and replaces each display tile with an input tile -// according to the luminance of that tile. The idea was to replicate the ASCII -// video filters seen in other apps, but the tileset can be anything. - -#import "GPUImageFilter.h" - -@interface GPUImageMosaicFilter : GPUImageFilter { - GLint inputTileSizeUniform, numTilesUniform, displayTileSizeUniform; -} - -@property(readwrite, nonatomic) CGSize inputTileSize; -@property(readwrite, nonatomic) float numTiles; -@property(readwrite, nonatomic) CGSize displayTileSize; - --(void)setNumTiles:(float)numTiles; --(void)setDisplayTileSize:(CGSize)displayTileSize; --(void)setInputTileSize:(CGSize)inputTileSize; --(void)addTileSet:(NSString *)tileSet; - -@end diff --git a/framework/Source/GPUImageMosaicFilter.m b/framework/Source/GPUImageMosaicFilter.m deleted file mode 100644 index 179f48c29..000000000 --- a/framework/Source/GPUImageMosaicFilter.m +++ /dev/null @@ -1,139 +0,0 @@ -// -// GPUImageMosaicFilter.m -// Face Esplode -// -// Created by Jacob Gundersen on 3/29/12. -// Copyright (c) 2012 Interrobang Software LLC. All rights reserved. -// - -#import "GPUImageMosaicFilter.h" -#import "GPUImagePicture.h" - -NSString *const kGPUImageMosaicFragmentShaderString = SHADER_STRING -( - precision highp float; - - varying vec2 textureCoordinate; - - uniform sampler2D inputImageTexture; - uniform sampler2D inputImageTexture2; - - uniform vec2 inputTileSize; - uniform vec2 displayTileSize; - uniform float numTiles; - - void main() - { - vec2 xy = textureCoordinate; - xy = xy - mod(xy, displayTileSize); - - vec4 lumcoeff = vec4(0.299,0.587,0.114,0.0); - - float lum = dot(texture2D(inputImageTexture, xy),lumcoeff); - lum = 1.0 - lum; - - float stepsize = 1.0 / numTiles; - float lumStep = (lum - mod(lum, stepsize)) / stepsize; - - float rowStep = 1.0 / inputTileSize.x; - float x = mod(lumStep, rowStep); - float y = floor(lumStep / rowStep); - - vec2 startCoord = vec2(float(x) * inputTileSize.x, float(y) * inputTileSize.y); - vec2 finalCoord = startCoord + ((textureCoordinate - xy) * (inputTileSize / displayTileSize)); - - vec4 color = texture2D(inputImageTexture2, finalCoord); - gl_FragColor = color; - - } - ); - -@implementation GPUImageMosaicFilter - -@synthesize inputTileSize = _inputTileSize, numTiles = _numTiles, displayTileSize = _displayTileSize; - -- (id)init; -{ - if (!(self = [super initWithFragmentShaderFromString:kGPUImageMosaicFragmentShaderString])) - { - return nil; - } - - inputTileSizeUniform = [filterProgram uniformIndex:@"inputTileSize"]; - displayTileSizeUniform = [filterProgram uniformIndex:@"displayTileSize"]; - numTilesUniform = [filterProgram uniformIndex:@"numTiles"]; - - CGSize its = CGSizeMake(0.125, 0.125); - CGSize dts = CGSizeMake(0.025, 0.025); - [self setDisplayTileSize:dts]; - [self setInputTileSize:its]; - [self setNumTiles:64.0]; - //[self addTileSet:@"squares.png"]; - return self; -} - --(void)setNumTiles:(float)numTiles { - - _numTiles = numTiles; - [self setFloat:_numTiles forUniform:@"numTiles"]; -} - --(void)setInputTileSize:(CGSize)inputTileSize { - if (inputTileSize.width > 1.0) { - _inputTileSize.width = 1.0; - } - if (inputTileSize.height > 1.0) { - _inputTileSize.height = 1.0; - } - if (inputTileSize.width < 0.0) { - _inputTileSize.width = 0.0; - } - if (inputTileSize.height < 0.0) { - _inputTileSize.height = 0.0; - } - - - _inputTileSize = inputTileSize; - - [GPUImageOpenGLESContext useImageProcessingContext]; - [filterProgram use]; - GLfloat inputTS[2]; - inputTS[0] = _inputTileSize.width; - inputTS[1] = _inputTileSize.height; - glUniform2fv(inputTileSizeUniform, 1, inputTS); -} - --(void)setDisplayTileSize:(CGSize)displayTileSize { - if (displayTileSize.width > 1.0) { - _displayTileSize.width = 1.0; - } - if (displayTileSize.height > 1.0) { - _displayTileSize.height = 1.0; - } - if (displayTileSize.width < 0.0) { - _displayTileSize.width = 0.0; - } - if (displayTileSize.height < 0.0) { - _displayTileSize.height = 0.0; - } - - - _displayTileSize = displayTileSize; - - [GPUImageOpenGLESContext useImageProcessingContext]; - [filterProgram use]; - GLfloat displayTS[2]; - displayTS[0] = _displayTileSize.width; - displayTS[1] = _displayTileSize.height; - glUniform2fv(displayTileSizeUniform, 1, displayTS); -} - -//I'd like to add this method, but I can't get it to work. The same set of commands works if they are called from my view controller class --(void)addTileSet:(NSString *)tileSet { - UIImage *img = [UIImage imageNamed:tileSet]; - GPUImagePicture *pic = [[GPUImagePicture alloc] initWithImage:img smoothlyScaleOutput:YES]; - [pic addTarget:self]; - -} - -@end diff --git a/framework/Source/GPUImageMovie.h b/framework/Source/GPUImageMovie.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageMovie.m b/framework/Source/GPUImageMovie.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageMovieWriter.h b/framework/Source/GPUImageMovieWriter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageMovieWriter.m b/framework/Source/GPUImageMovieWriter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageMultiplyBlendFilter.h b/framework/Source/GPUImageMultiplyBlendFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageMultiplyBlendFilter.m b/framework/Source/GPUImageMultiplyBlendFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageNonMaximumSuppressionFilter.h b/framework/Source/GPUImageNonMaximumSuppressionFilter.h new file mode 100755 index 000000000..1c586dcc1 --- /dev/null +++ b/framework/Source/GPUImageNonMaximumSuppressionFilter.h @@ -0,0 +1,8 @@ +#import "GPUImageTwoPassFilter.h" + +@interface GPUImageNonMaximumSuppressionFilter : GPUImageTwoPassFilter +{ + GLint verticalPassTexelWidthOffsetUniform, verticalPassTexelHeightOffsetUniform, horizontalPassTexelWidthOffsetUniform, horizontalPassTexelHeightOffsetUniform; +} + +@end diff --git a/framework/Source/GPUImageNonMaximumSuppressionFilter.m b/framework/Source/GPUImageNonMaximumSuppressionFilter.m new file mode 100755 index 000000000..2c7ab6fc7 --- /dev/null +++ b/framework/Source/GPUImageNonMaximumSuppressionFilter.m @@ -0,0 +1,95 @@ +#import "GPUImageNonMaximumSuppressionFilter.h" + +NSString *const kGPUImageNonMaximumSuppressionVertexShaderString = SHADER_STRING +( + attribute vec4 position; + attribute vec2 inputTextureCoordinate; + + uniform highp float texelWidthOffset; + uniform highp float texelHeightOffset; + uniform highp float blurSize; + + varying highp vec2 centerTextureCoordinate; + varying highp vec2 oneStepNegativeTextureCoordinate; + varying highp vec2 twoStepsNegativeTextureCoordinate; + varying highp vec2 oneStepPositiveTextureCoordinate; + varying highp vec2 twoStepsPositiveTextureCoordinate; + + void main() + { + gl_Position = position; + + vec2 firstOffset = vec2(texelWidthOffset, texelHeightOffset) * 1.0; + vec2 secondOffset = vec2(texelWidthOffset, texelHeightOffset) * 2.0; + + centerTextureCoordinate = inputTextureCoordinate; + oneStepNegativeTextureCoordinate = inputTextureCoordinate - firstOffset; + twoStepsNegativeTextureCoordinate = inputTextureCoordinate - secondOffset; + oneStepPositiveTextureCoordinate = inputTextureCoordinate + firstOffset; + twoStepsPositiveTextureCoordinate = inputTextureCoordinate + secondOffset; + } +); + + +NSString *const kGPUImageNonMaximumSuppressionFragmentShaderString = SHADER_STRING +( + uniform sampler2D inputImageTexture; + + varying highp vec2 centerTextureCoordinate; + varying highp vec2 oneStepNegativeTextureCoordinate; + varying highp vec2 twoStepsNegativeTextureCoordinate; + varying highp vec2 oneStepPositiveTextureCoordinate; + varying highp vec2 twoStepsPositiveTextureCoordinate; + + void main() + { + lowp float fragmentColor = texture2D(inputImageTexture, centerTextureCoordinate).r; + lowp float oneStepNegativeFragmentColor = texture2D(inputImageTexture, oneStepNegativeTextureCoordinate).r; + lowp float twoStepsNegativeFragmentColor = texture2D(inputImageTexture, twoStepsNegativeTextureCoordinate).r; + lowp float oneStepPositiveFragmentColor = texture2D(inputImageTexture, oneStepPositiveTextureCoordinate).r; + lowp float twoStepsPositiveFragmentColor = texture2D(inputImageTexture, twoStepsPositiveTextureCoordinate).r; + + lowp float maxValue = max(fragmentColor, oneStepNegativeFragmentColor); + maxValue = max(maxValue, twoStepsNegativeFragmentColor); + maxValue = max(maxValue, oneStepPositiveFragmentColor); + maxValue = max(maxValue, twoStepsPositiveFragmentColor); + + gl_FragColor = vec4(fragmentColor * step(maxValue, fragmentColor)); + } +); + +@implementation GPUImageNonMaximumSuppressionFilter + +#pragma mark - +#pragma mark Initialization and teardown + +- (id)init; +{ + if (!(self = [super initWithFirstStageVertexShaderFromString:kGPUImageNonMaximumSuppressionVertexShaderString firstStageFragmentShaderFromString:kGPUImageNonMaximumSuppressionFragmentShaderString secondStageVertexShaderFromString:kGPUImageNonMaximumSuppressionVertexShaderString secondStageFragmentShaderFromString:kGPUImageNonMaximumSuppressionFragmentShaderString])) + { + return nil; + } + + verticalPassTexelWidthOffsetUniform = [filterProgram uniformIndex:@"texelWidthOffset"]; + verticalPassTexelHeightOffsetUniform = [filterProgram uniformIndex:@"texelHeightOffset"]; + + horizontalPassTexelWidthOffsetUniform = [secondFilterProgram uniformIndex:@"texelWidthOffset"]; + horizontalPassTexelHeightOffsetUniform = [secondFilterProgram uniformIndex:@"texelHeightOffset"]; + + return self; +} + +- (void)setupFilterForSize:(CGSize)filterFrameSize; +{ + [GPUImageOpenGLESContext useImageProcessingContext]; + [filterProgram use]; + glUniform1f(verticalPassTexelWidthOffsetUniform, 0.0); + glUniform1f(verticalPassTexelHeightOffsetUniform, 1.0 / filterFrameSize.height); + + [secondFilterProgram use]; + glUniform1f(horizontalPassTexelWidthOffsetUniform, 1.0 / filterFrameSize.width); + glUniform1f(horizontalPassTexelHeightOffsetUniform, 0.0); +} + +@end + diff --git a/framework/Source/GPUImageOpenGLESContext.h b/framework/Source/GPUImageOpenGLESContext.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageOpenGLESContext.m b/framework/Source/GPUImageOpenGLESContext.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageOutput.h b/framework/Source/GPUImageOutput.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageOutput.m b/framework/Source/GPUImageOutput.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageOverlayBlendFilter.h b/framework/Source/GPUImageOverlayBlendFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageOverlayBlendFilter.m b/framework/Source/GPUImageOverlayBlendFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImagePicture.h b/framework/Source/GPUImagePicture.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImagePicture.m b/framework/Source/GPUImagePicture.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImagePinchDistortionFilter.h b/framework/Source/GPUImagePinchDistortionFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImagePinchDistortionFilter.m b/framework/Source/GPUImagePinchDistortionFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImagePixellateFilter.h b/framework/Source/GPUImagePixellateFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImagePixellateFilter.m b/framework/Source/GPUImagePixellateFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImagePolarPixellateFilter.h b/framework/Source/GPUImagePolarPixellateFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImagePolarPixellateFilter.m b/framework/Source/GPUImagePolarPixellateFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImagePosterizeFilter.h b/framework/Source/GPUImagePosterizeFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImagePosterizeFilter.m b/framework/Source/GPUImagePosterizeFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImagePrewittEdgeDetectionFilter.h b/framework/Source/GPUImagePrewittEdgeDetectionFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImagePrewittEdgeDetectionFilter.m b/framework/Source/GPUImagePrewittEdgeDetectionFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageRawData.h b/framework/Source/GPUImageRawData.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageRawData.m b/framework/Source/GPUImageRawData.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageRotationFilter.h b/framework/Source/GPUImageRotationFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageRotationFilter.m b/framework/Source/GPUImageRotationFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageSaturationFilter.h b/framework/Source/GPUImageSaturationFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageSaturationFilter.m b/framework/Source/GPUImageSaturationFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageScreenBlendFilter.h b/framework/Source/GPUImageScreenBlendFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageScreenBlendFilter.m b/framework/Source/GPUImageScreenBlendFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageSepiaFilter.h b/framework/Source/GPUImageSepiaFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageSepiaFilter.m b/framework/Source/GPUImageSepiaFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageSharpenFilter.h b/framework/Source/GPUImageSharpenFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageSharpenFilter.m b/framework/Source/GPUImageSharpenFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageSketchFilter.h b/framework/Source/GPUImageSketchFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageSketchFilter.m b/framework/Source/GPUImageSketchFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageSmoothToonFilter.h b/framework/Source/GPUImageSmoothToonFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageSmoothToonFilter.m b/framework/Source/GPUImageSmoothToonFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageSobelEdgeDetectionFilter.h b/framework/Source/GPUImageSobelEdgeDetectionFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageSobelEdgeDetectionFilter.m b/framework/Source/GPUImageSobelEdgeDetectionFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageSoftLightBlendFilter.h b/framework/Source/GPUImageSoftLightBlendFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageSoftLightBlendFilter.m b/framework/Source/GPUImageSoftLightBlendFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageStillCamera.h b/framework/Source/GPUImageStillCamera.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageStillCamera.m b/framework/Source/GPUImageStillCamera.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageStretchDistortionFilter.h b/framework/Source/GPUImageStretchDistortionFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageStretchDistortionFilter.m b/framework/Source/GPUImageStretchDistortionFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageSubtractBlendFilter.h b/framework/Source/GPUImageSubtractBlendFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageSubtractBlendFilter.m b/framework/Source/GPUImageSubtractBlendFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageSwirlFilter.h b/framework/Source/GPUImageSwirlFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageSwirlFilter.m b/framework/Source/GPUImageSwirlFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageTextureInput.h b/framework/Source/GPUImageTextureInput.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageTextureInput.m b/framework/Source/GPUImageTextureInput.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageTextureOutput.h b/framework/Source/GPUImageTextureOutput.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageTextureOutput.m b/framework/Source/GPUImageTextureOutput.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageThresholdEdgeDetection.h b/framework/Source/GPUImageThresholdEdgeDetection.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageThresholdEdgeDetection.m b/framework/Source/GPUImageThresholdEdgeDetection.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageTiltShiftFilter.h b/framework/Source/GPUImageTiltShiftFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageTiltShiftFilter.m b/framework/Source/GPUImageTiltShiftFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageToonFilter.h b/framework/Source/GPUImageToonFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageToonFilter.m b/framework/Source/GPUImageToonFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageTransformFilter.h b/framework/Source/GPUImageTransformFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageTransformFilter.m b/framework/Source/GPUImageTransformFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageTwoPassFilter.h b/framework/Source/GPUImageTwoPassFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageTwoPassFilter.m b/framework/Source/GPUImageTwoPassFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageUnsharpMaskFilter.h b/framework/Source/GPUImageUnsharpMaskFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageUnsharpMaskFilter.m b/framework/Source/GPUImageUnsharpMaskFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageVideoCamera.h b/framework/Source/GPUImageVideoCamera.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageVideoCamera.m b/framework/Source/GPUImageVideoCamera.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageView.h b/framework/Source/GPUImageView.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageView.m b/framework/Source/GPUImageView.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageVignetteFilter.h b/framework/Source/GPUImageVignetteFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageVignetteFilter.m b/framework/Source/GPUImageVignetteFilter.m old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageXYDerivativeFilter.h b/framework/Source/GPUImageXYDerivativeFilter.h old mode 100644 new mode 100755 diff --git a/framework/Source/GPUImageXYDerivativeFilter.m b/framework/Source/GPUImageXYDerivativeFilter.m old mode 100644 new mode 100755 index 9b18ae344..fdbcae913 --- a/framework/Source/GPUImageXYDerivativeFilter.m +++ b/framework/Source/GPUImageXYDerivativeFilter.m @@ -23,23 +23,23 @@ @implementation GPUImageXYDerivativeFilter uniform sampler2D inputImageTexture; - const float harrisConstant = -0.5; - void main() { - float bottomLeftIntensity = texture2D(inputImageTexture, bottomLeftTextureCoordinate).r; + float topIntensity = texture2D(inputImageTexture, topTextureCoordinate).r; float topRightIntensity = texture2D(inputImageTexture, topRightTextureCoordinate).r; float topLeftIntensity = texture2D(inputImageTexture, topLeftTextureCoordinate).r; + float bottomIntensity = texture2D(inputImageTexture, bottomTextureCoordinate).r; + float bottomLeftIntensity = texture2D(inputImageTexture, bottomLeftTextureCoordinate).r; float bottomRightIntensity = texture2D(inputImageTexture, bottomRightTextureCoordinate).r; float leftIntensity = texture2D(inputImageTexture, leftTextureCoordinate).r; float rightIntensity = texture2D(inputImageTexture, rightTextureCoordinate).r; - float bottomIntensity = texture2D(inputImageTexture, bottomTextureCoordinate).r; - float topIntensity = texture2D(inputImageTexture, topTextureCoordinate).r; - float verticalDerivative = abs(-topLeftIntensity - topIntensity - topRightIntensity + bottomLeftIntensity + bottomIntensity + bottomRightIntensity); - float horizontalDerivative = abs(-bottomLeftIntensity - leftIntensity - topLeftIntensity + bottomRightIntensity + rightIntensity + topRightIntensity); +// float verticalDerivative = abs(-topLeftIntensity - topIntensity - topRightIntensity + bottomLeftIntensity + bottomIntensity + bottomRightIntensity); +// float horizontalDerivative = abs(-bottomLeftIntensity - leftIntensity - topLeftIntensity + bottomRightIntensity + rightIntensity + topRightIntensity); + float verticalDerivative = abs(-topIntensity + bottomIntensity); + float horizontalDerivative = abs(-leftIntensity + rightIntensity); - gl_FragColor = vec4(verticalDerivative * verticalDerivative, horizontalDerivative * horizontalDerivative, verticalDerivative * horizontalDerivative, 1.0); + gl_FragColor = vec4(horizontalDerivative * horizontalDerivative, verticalDerivative * verticalDerivative, verticalDerivative * horizontalDerivative, 1.0); } ); diff --git a/framework/Source/tilesets/circles.png b/framework/Source/tilesets/circles.png deleted file mode 100644 index ffac135f3..000000000 Binary files a/framework/Source/tilesets/circles.png and /dev/null differ diff --git a/framework/Source/tilesets/photo 4.JPG b/framework/Source/tilesets/photo 4.JPG deleted file mode 100644 index 4c43350f4..000000000 Binary files a/framework/Source/tilesets/photo 4.JPG and /dev/null differ diff --git a/framework/Source/tilesets/squares.png b/framework/Source/tilesets/squares.png deleted file mode 100644 index ac1a4899a..000000000 Binary files a/framework/Source/tilesets/squares.png and /dev/null differ