├── .gitignore ├── .idea ├── .gitignore ├── compiler.xml ├── jarRepositories.xml └── misc.xml ├── README.md ├── app ├── build.gradle ├── release │ └── output-metadata.json └── src │ └── main │ ├── AndroidManifest.xml │ ├── assets │ ├── yolov5-lite.bin │ └── yolov5-lite.param │ ├── java │ └── com │ │ └── tencent │ │ └── ncnnyolox │ │ ├── MainActivity.java │ │ ├── NcnnYolox.java │ │ └── pixelcopy │ │ ├── ImageCopyRequest.java │ │ ├── PixelCopyCallback.java │ │ └── PostTake.java │ ├── jni │ ├── CMakeLists.txt │ ├── ncnn-20220701-android-vulkan │ │ ├── arm64-v8a │ │ │ ├── include │ │ │ │ ├── glslang │ │ │ │ │ ├── Include │ │ │ │ │ │ ├── BaseTypes.h │ │ │ │ │ │ ├── Common.h │ │ │ │ │ │ ├── ConstantUnion.h │ │ │ │ │ │ ├── InfoSink.h │ │ │ │ │ │ ├── InitializeGlobals.h │ │ │ │ │ │ ├── PoolAlloc.h │ │ │ │ │ │ ├── ResourceLimits.h │ │ │ │ │ │ ├── ShHandle.h │ │ │ │ │ │ ├── SpirvIntrinsics.h │ │ │ │ │ │ ├── Types.h │ │ │ │ │ │ ├── arrays.h │ │ │ │ │ │ ├── glslang_c_interface.h │ │ │ │ │ │ ├── glslang_c_shader_types.h │ │ │ │ │ │ └── intermediate.h │ │ │ │ │ ├── MachineIndependent │ │ │ │ │ │ ├── Initialize.h │ │ │ │ │ │ ├── LiveTraverser.h │ │ │ │ │ │ ├── ParseHelper.h │ │ │ │ │ │ ├── RemoveTree.h │ │ │ │ │ │ ├── Scan.h │ │ │ │ │ │ ├── ScanContext.h │ │ │ │ │ │ ├── SymbolTable.h │ │ │ │ │ │ ├── Versions.h │ │ │ │ │ │ ├── attribute.h │ │ │ │ │ │ ├── gl_types.h │ │ │ │ │ │ ├── glslang_tab.cpp.h │ │ │ │ │ │ ├── iomapper.h │ │ │ │ │ │ ├── localintermediate.h │ │ │ │ │ │ ├── parseVersions.h │ │ │ │ │ │ ├── preprocessor │ │ │ │ │ │ │ ├── PpContext.h │ │ │ │ │ │ │ └── PpTokens.h │ │ │ │ │ │ ├── propagateNoContraction.h │ │ │ │ │ │ └── reflection.h │ │ │ │ │ ├── Public │ │ │ │ │ │ └── ShaderLang.h │ │ │ │ │ ├── SPIRV │ │ │ │ │ │ ├── GLSL.ext.AMD.h │ │ │ │ │ │ ├── GLSL.ext.EXT.h │ │ │ │ │ │ ├── GLSL.ext.KHR.h │ │ │ │ │ │ ├── GLSL.ext.NV.h │ │ │ │ │ │ ├── GLSL.std.450.h │ │ │ │ │ │ ├── GlslangToSpv.h │ │ │ │ │ │ ├── Logger.h │ │ │ │ │ │ ├── NonSemanticDebugPrintf.h │ │ │ │ │ │ ├── SPVRemapper.h │ │ │ │ │ │ ├── SpvBuilder.h │ │ │ │ │ │ ├── SpvTools.h │ │ │ │ │ │ ├── bitutils.h │ │ │ │ │ │ ├── disassemble.h │ │ │ │ │ │ ├── doc.h │ │ │ │ │ │ ├── hex_float.h │ │ │ │ │ │ ├── spirv.hpp │ │ │ │ │ │ └── spvIR.h │ │ │ │ │ └── build_info.h │ │ │ │ └── ncnn │ │ │ │ │ ├── allocator.h │ │ │ │ │ ├── benchmark.h │ │ │ │ │ ├── blob.h │ │ │ │ │ ├── c_api.h │ │ │ │ │ ├── command.h │ │ │ │ │ ├── cpu.h │ │ │ │ │ ├── datareader.h │ │ │ │ │ ├── gpu.h │ │ │ │ │ ├── layer.h │ │ │ │ │ ├── layer_shader_type.h │ │ │ │ │ ├── layer_shader_type_enum.h │ │ │ │ │ ├── layer_type.h │ │ │ │ │ ├── layer_type_enum.h │ │ │ │ │ ├── mat.h │ │ │ │ │ ├── modelbin.h │ │ │ │ │ ├── ncnn_export.h │ │ │ │ │ ├── net.h │ │ │ │ │ ├── option.h │ │ │ │ │ ├── paramdict.h │ │ │ │ │ ├── pipeline.h │ │ │ │ │ ├── pipelinecache.h │ │ │ │ │ ├── platform.h │ │ │ │ │ ├── simpleocv.h │ │ │ │ │ ├── simpleomp.h │ │ │ │ │ ├── simplestl.h │ │ │ │ │ └── vulkan_header_fix.h │ │ │ └── lib │ │ │ │ ├── cmake │ │ │ │ ├── OGLCompilerTargets-release.cmake │ │ │ │ ├── OGLCompilerTargets.cmake │ │ │ │ ├── OSDependentTargets-release.cmake │ │ │ │ ├── OSDependentTargets.cmake │ │ │ │ ├── SPIRVTargets-release.cmake │ │ │ │ ├── SPIRVTargets.cmake │ │ │ │ ├── glslangTargets-release.cmake │ │ │ │ ├── glslangTargets.cmake │ │ │ │ └── ncnn │ │ │ │ │ ├── ncnn-release.cmake │ │ │ │ │ ├── ncnn.cmake │ │ │ │ │ └── ncnnConfig.cmake │ │ │ │ ├── libGenericCodeGen.a │ │ │ │ ├── libMachineIndependent.a │ │ │ │ ├── libOGLCompiler.a │ │ │ │ ├── libOSDependent.a │ │ │ │ ├── libSPIRV.a │ │ │ │ ├── libglslang.a │ │ │ │ ├── libncnn.a │ │ │ │ └── pkgconfig │ │ │ │ └── ncnn.pc │ │ ├── armeabi-v7a │ │ │ ├── include │ │ │ │ ├── glslang │ │ │ │ │ ├── Include │ │ │ │ │ │ ├── BaseTypes.h │ │ │ │ │ │ ├── Common.h │ │ │ │ │ │ ├── ConstantUnion.h │ │ │ │ │ │ ├── InfoSink.h │ │ │ │ │ │ ├── InitializeGlobals.h │ │ │ │ │ │ ├── PoolAlloc.h │ │ │ │ │ │ ├── ResourceLimits.h │ │ │ │ │ │ ├── ShHandle.h │ │ │ │ │ │ ├── SpirvIntrinsics.h │ │ │ │ │ │ ├── Types.h │ │ │ │ │ │ ├── arrays.h │ │ │ │ │ │ ├── glslang_c_interface.h │ │ │ │ │ │ ├── glslang_c_shader_types.h │ │ │ │ │ │ └── intermediate.h │ │ │ │ │ ├── MachineIndependent │ │ │ │ │ │ ├── Initialize.h │ │ │ │ │ │ ├── LiveTraverser.h │ │ │ │ │ │ ├── ParseHelper.h │ │ │ │ │ │ ├── RemoveTree.h │ │ │ │ │ │ ├── Scan.h │ │ │ │ │ │ ├── ScanContext.h │ │ │ │ │ │ ├── SymbolTable.h │ │ │ │ │ │ ├── Versions.h │ │ │ │ │ │ ├── attribute.h │ │ │ │ │ │ ├── gl_types.h │ │ │ │ │ │ ├── glslang_tab.cpp.h │ │ │ │ │ │ ├── iomapper.h │ │ │ │ │ │ ├── localintermediate.h │ │ │ │ │ │ ├── parseVersions.h │ │ │ │ │ │ ├── preprocessor │ │ │ │ │ │ │ ├── PpContext.h │ │ │ │ │ │ │ └── PpTokens.h │ │ │ │ │ │ ├── propagateNoContraction.h │ │ │ │ │ │ └── reflection.h │ │ │ │ │ ├── Public │ │ │ │ │ │ └── ShaderLang.h │ │ │ │ │ ├── SPIRV │ │ │ │ │ │ ├── GLSL.ext.AMD.h │ │ │ │ │ │ ├── GLSL.ext.EXT.h │ │ │ │ │ │ ├── GLSL.ext.KHR.h │ │ │ │ │ │ ├── GLSL.ext.NV.h │ │ │ │ │ │ ├── GLSL.std.450.h │ │ │ │ │ │ ├── GlslangToSpv.h │ │ │ │ │ │ ├── Logger.h │ │ │ │ │ │ ├── NonSemanticDebugPrintf.h │ │ │ │ │ │ ├── SPVRemapper.h │ │ │ │ │ │ ├── SpvBuilder.h │ │ │ │ │ │ ├── SpvTools.h │ │ │ │ │ │ ├── bitutils.h │ │ │ │ │ │ ├── disassemble.h │ │ │ │ │ │ ├── doc.h │ │ │ │ │ │ ├── hex_float.h │ │ │ │ │ │ ├── spirv.hpp │ │ │ │ │ │ └── spvIR.h │ │ │ │ │ └── build_info.h │ │ │ │ └── ncnn │ │ │ │ │ ├── allocator.h │ │ │ │ │ ├── benchmark.h │ │ │ │ │ ├── blob.h │ │ │ │ │ ├── c_api.h │ │ │ │ │ ├── command.h │ │ │ │ │ ├── cpu.h │ │ │ │ │ ├── datareader.h │ │ │ │ │ ├── gpu.h │ │ │ │ │ ├── layer.h │ │ │ │ │ ├── layer_shader_type.h │ │ │ │ │ ├── layer_shader_type_enum.h │ │ │ │ │ ├── layer_type.h │ │ │ │ │ ├── layer_type_enum.h │ │ │ │ │ ├── mat.h │ │ │ │ │ ├── modelbin.h │ │ │ │ │ ├── ncnn_export.h │ │ │ │ │ ├── net.h │ │ │ │ │ ├── option.h │ │ │ │ │ ├── paramdict.h │ │ │ │ │ ├── pipeline.h │ │ │ │ │ ├── pipelinecache.h │ │ │ │ │ ├── platform.h │ │ │ │ │ ├── simpleocv.h │ │ │ │ │ ├── simpleomp.h │ │ │ │ │ ├── simplestl.h │ │ │ │ │ └── vulkan_header_fix.h │ │ │ └── lib │ │ │ │ ├── cmake │ │ │ │ ├── OGLCompilerTargets-release.cmake │ │ │ │ ├── OGLCompilerTargets.cmake │ │ │ │ ├── OSDependentTargets-release.cmake │ │ │ │ ├── OSDependentTargets.cmake │ │ │ │ ├── SPIRVTargets-release.cmake │ │ │ │ ├── SPIRVTargets.cmake │ │ │ │ ├── glslangTargets-release.cmake │ │ │ │ ├── glslangTargets.cmake │ │ │ │ └── ncnn │ │ │ │ │ ├── ncnn-release.cmake │ │ │ │ │ ├── ncnn.cmake │ │ │ │ │ └── ncnnConfig.cmake │ │ │ │ ├── libGenericCodeGen.a │ │ │ │ ├── libMachineIndependent.a │ │ │ │ ├── libOGLCompiler.a │ │ │ │ ├── libOSDependent.a │ │ │ │ ├── libSPIRV.a │ │ │ │ ├── libglslang.a │ │ │ │ ├── libncnn.a │ │ │ │ └── pkgconfig │ │ │ │ └── ncnn.pc │ │ ├── x86 │ │ │ ├── include │ │ │ │ ├── glslang │ │ │ │ │ ├── Include │ │ │ │ │ │ ├── BaseTypes.h │ │ │ │ │ │ ├── Common.h │ │ │ │ │ │ ├── ConstantUnion.h │ │ │ │ │ │ ├── InfoSink.h │ │ │ │ │ │ ├── InitializeGlobals.h │ │ │ │ │ │ ├── PoolAlloc.h │ │ │ │ │ │ ├── ResourceLimits.h │ │ │ │ │ │ ├── ShHandle.h │ │ │ │ │ │ ├── SpirvIntrinsics.h │ │ │ │ │ │ ├── Types.h │ │ │ │ │ │ ├── arrays.h │ │ │ │ │ │ ├── glslang_c_interface.h │ │ │ │ │ │ ├── glslang_c_shader_types.h │ │ │ │ │ │ └── intermediate.h │ │ │ │ │ ├── MachineIndependent │ │ │ │ │ │ ├── Initialize.h │ │ │ │ │ │ ├── LiveTraverser.h │ │ │ │ │ │ ├── ParseHelper.h │ │ │ │ │ │ ├── RemoveTree.h │ │ │ │ │ │ ├── Scan.h │ │ │ │ │ │ ├── ScanContext.h │ │ │ │ │ │ ├── SymbolTable.h │ │ │ │ │ │ ├── Versions.h │ │ │ │ │ │ ├── attribute.h │ │ │ │ │ │ ├── gl_types.h │ │ │ │ │ │ ├── glslang_tab.cpp.h │ │ │ │ │ │ ├── iomapper.h │ │ │ │ │ │ ├── localintermediate.h │ │ │ │ │ │ ├── parseVersions.h │ │ │ │ │ │ ├── preprocessor │ │ │ │ │ │ │ ├── PpContext.h │ │ │ │ │ │ │ └── PpTokens.h │ │ │ │ │ │ ├── propagateNoContraction.h │ │ │ │ │ │ └── reflection.h │ │ │ │ │ ├── Public │ │ │ │ │ │ └── ShaderLang.h │ │ │ │ │ ├── SPIRV │ │ │ │ │ │ ├── GLSL.ext.AMD.h │ │ │ │ │ │ ├── GLSL.ext.EXT.h │ │ │ │ │ │ ├── GLSL.ext.KHR.h │ │ │ │ │ │ ├── GLSL.ext.NV.h │ │ │ │ │ │ ├── GLSL.std.450.h │ │ │ │ │ │ ├── GlslangToSpv.h │ │ │ │ │ │ ├── Logger.h │ │ │ │ │ │ ├── NonSemanticDebugPrintf.h │ │ │ │ │ │ ├── SPVRemapper.h │ │ │ │ │ │ ├── SpvBuilder.h │ │ │ │ │ │ ├── SpvTools.h │ │ │ │ │ │ ├── bitutils.h │ │ │ │ │ │ ├── disassemble.h │ │ │ │ │ │ ├── doc.h │ │ │ │ │ │ ├── hex_float.h │ │ │ │ │ │ ├── spirv.hpp │ │ │ │ │ │ └── spvIR.h │ │ │ │ │ └── build_info.h │ │ │ │ └── ncnn │ │ │ │ │ ├── allocator.h │ │ │ │ │ ├── benchmark.h │ │ │ │ │ ├── blob.h │ │ │ │ │ ├── c_api.h │ │ │ │ │ ├── command.h │ │ │ │ │ ├── cpu.h │ │ │ │ │ ├── datareader.h │ │ │ │ │ ├── gpu.h │ │ │ │ │ ├── layer.h │ │ │ │ │ ├── layer_shader_type.h │ │ │ │ │ ├── layer_shader_type_enum.h │ │ │ │ │ ├── layer_type.h │ │ │ │ │ ├── layer_type_enum.h │ │ │ │ │ ├── mat.h │ │ │ │ │ ├── modelbin.h │ │ │ │ │ ├── ncnn_export.h │ │ │ │ │ ├── net.h │ │ │ │ │ ├── option.h │ │ │ │ │ ├── paramdict.h │ │ │ │ │ ├── pipeline.h │ │ │ │ │ ├── pipelinecache.h │ │ │ │ │ ├── platform.h │ │ │ │ │ ├── simpleocv.h │ │ │ │ │ ├── simpleomp.h │ │ │ │ │ ├── simplestl.h │ │ │ │ │ └── vulkan_header_fix.h │ │ │ └── lib │ │ │ │ ├── cmake │ │ │ │ ├── OGLCompilerTargets-release.cmake │ │ │ │ ├── OGLCompilerTargets.cmake │ │ │ │ ├── OSDependentTargets-release.cmake │ │ │ │ ├── OSDependentTargets.cmake │ │ │ │ ├── SPIRVTargets-release.cmake │ │ │ │ ├── SPIRVTargets.cmake │ │ │ │ ├── glslangTargets-release.cmake │ │ │ │ ├── glslangTargets.cmake │ │ │ │ └── ncnn │ │ │ │ │ ├── ncnn-release.cmake │ │ │ │ │ ├── ncnn.cmake │ │ │ │ │ └── ncnnConfig.cmake │ │ │ │ ├── libGenericCodeGen.a │ │ │ │ ├── libMachineIndependent.a │ │ │ │ ├── libOGLCompiler.a │ │ │ │ ├── libOSDependent.a │ │ │ │ ├── libSPIRV.a │ │ │ │ ├── libglslang.a │ │ │ │ ├── libncnn.a │ │ │ │ └── pkgconfig │ │ │ │ └── ncnn.pc │ │ └── x86_64 │ │ │ ├── include │ │ │ ├── glslang │ │ │ │ ├── Include │ │ │ │ │ ├── BaseTypes.h │ │ │ │ │ ├── Common.h │ │ │ │ │ ├── ConstantUnion.h │ │ │ │ │ ├── InfoSink.h │ │ │ │ │ ├── InitializeGlobals.h │ │ │ │ │ ├── PoolAlloc.h │ │ │ │ │ ├── ResourceLimits.h │ │ │ │ │ ├── ShHandle.h │ │ │ │ │ ├── SpirvIntrinsics.h │ │ │ │ │ ├── Types.h │ │ │ │ │ ├── arrays.h │ │ │ │ │ ├── glslang_c_interface.h │ │ │ │ │ ├── glslang_c_shader_types.h │ │ │ │ │ └── intermediate.h │ │ │ │ ├── MachineIndependent │ │ │ │ │ ├── Initialize.h │ │ │ │ │ ├── LiveTraverser.h │ │ │ │ │ ├── ParseHelper.h │ │ │ │ │ ├── RemoveTree.h │ │ │ │ │ ├── Scan.h │ │ │ │ │ ├── ScanContext.h │ │ │ │ │ ├── SymbolTable.h │ │ │ │ │ ├── Versions.h │ │ │ │ │ ├── attribute.h │ │ │ │ │ ├── gl_types.h │ │ │ │ │ ├── glslang_tab.cpp.h │ │ │ │ │ ├── iomapper.h │ │ │ │ │ ├── localintermediate.h │ │ │ │ │ ├── parseVersions.h │ │ │ │ │ ├── preprocessor │ │ │ │ │ │ ├── PpContext.h │ │ │ │ │ │ └── PpTokens.h │ │ │ │ │ ├── propagateNoContraction.h │ │ │ │ │ └── reflection.h │ │ │ │ ├── Public │ │ │ │ │ └── ShaderLang.h │ │ │ │ ├── SPIRV │ │ │ │ │ ├── GLSL.ext.AMD.h │ │ │ │ │ ├── GLSL.ext.EXT.h │ │ │ │ │ ├── GLSL.ext.KHR.h │ │ │ │ │ ├── GLSL.ext.NV.h │ │ │ │ │ ├── GLSL.std.450.h │ │ │ │ │ ├── GlslangToSpv.h │ │ │ │ │ ├── Logger.h │ │ │ │ │ ├── NonSemanticDebugPrintf.h │ │ │ │ │ ├── SPVRemapper.h │ │ │ │ │ ├── SpvBuilder.h │ │ │ │ │ ├── SpvTools.h │ │ │ │ │ ├── bitutils.h │ │ │ │ │ ├── disassemble.h │ │ │ │ │ ├── doc.h │ │ │ │ │ ├── hex_float.h │ │ │ │ │ ├── spirv.hpp │ │ │ │ │ └── spvIR.h │ │ │ │ └── build_info.h │ │ │ └── ncnn │ │ │ │ ├── allocator.h │ │ │ │ ├── benchmark.h │ │ │ │ ├── blob.h │ │ │ │ ├── c_api.h │ │ │ │ ├── command.h │ │ │ │ ├── cpu.h │ │ │ │ ├── datareader.h │ │ │ │ ├── gpu.h │ │ │ │ ├── layer.h │ │ │ │ ├── layer_shader_type.h │ │ │ │ ├── layer_shader_type_enum.h │ │ │ │ ├── layer_type.h │ │ │ │ ├── layer_type_enum.h │ │ │ │ ├── mat.h │ │ │ │ ├── modelbin.h │ │ │ │ ├── ncnn_export.h │ │ │ │ ├── net.h │ │ │ │ ├── option.h │ │ │ │ ├── paramdict.h │ │ │ │ ├── pipeline.h │ │ │ │ ├── pipelinecache.h │ │ │ │ ├── platform.h │ │ │ │ ├── simpleocv.h │ │ │ │ ├── simpleomp.h │ │ │ │ ├── simplestl.h │ │ │ │ └── vulkan_header_fix.h │ │ │ └── lib │ │ │ ├── cmake │ │ │ ├── OGLCompilerTargets-release.cmake │ │ │ ├── OGLCompilerTargets.cmake │ │ │ ├── OSDependentTargets-release.cmake │ │ │ ├── OSDependentTargets.cmake │ │ │ ├── SPIRVTargets-release.cmake │ │ │ ├── SPIRVTargets.cmake │ │ │ ├── glslangTargets-release.cmake │ │ │ ├── glslangTargets.cmake │ │ │ └── ncnn │ │ │ │ ├── ncnn-release.cmake │ │ │ │ ├── ncnn.cmake │ │ │ │ └── ncnnConfig.cmake │ │ │ ├── libGenericCodeGen.a │ │ │ ├── libMachineIndependent.a │ │ │ ├── libOGLCompiler.a │ │ │ ├── libOSDependent.a │ │ │ ├── libSPIRV.a │ │ │ ├── libglslang.a │ │ │ ├── libncnn.a │ │ │ └── pkgconfig │ │ │ └── ncnn.pc │ ├── ndkcamera.cpp │ ├── ndkcamera.h │ ├── opencv-mobile-4.5.3-android │ │ ├── LICENSE │ │ ├── README.android │ │ └── sdk │ │ │ └── native │ │ │ ├── jni │ │ │ ├── OpenCVConfig-version.cmake │ │ │ ├── OpenCVConfig.cmake │ │ │ ├── abi-arm64-v8a │ │ │ │ ├── OpenCVConfig-version.cmake │ │ │ │ ├── OpenCVConfig.cmake │ │ │ │ ├── OpenCVModules-release.cmake │ │ │ │ └── OpenCVModules.cmake │ │ │ ├── abi-armeabi-v7a │ │ │ │ ├── OpenCVConfig-version.cmake │ │ │ │ ├── OpenCVConfig.cmake │ │ │ │ ├── OpenCVModules-release.cmake │ │ │ │ └── OpenCVModules.cmake │ │ │ ├── abi-x86 │ │ │ │ ├── OpenCVConfig-version.cmake │ │ │ │ ├── OpenCVConfig.cmake │ │ │ │ ├── OpenCVModules-release.cmake │ │ │ │ └── OpenCVModules.cmake │ │ │ ├── abi-x86_64 │ │ │ │ ├── OpenCVConfig-version.cmake │ │ │ │ ├── OpenCVConfig.cmake │ │ │ │ ├── OpenCVModules-release.cmake │ │ │ │ └── OpenCVModules.cmake │ │ │ └── include │ │ │ │ └── opencv2 │ │ │ │ ├── core.hpp │ │ │ │ ├── core │ │ │ │ ├── affine.hpp │ │ │ │ ├── async.hpp │ │ │ │ ├── base.hpp │ │ │ │ ├── bindings_utils.hpp │ │ │ │ ├── bufferpool.hpp │ │ │ │ ├── check.hpp │ │ │ │ ├── core.hpp │ │ │ │ ├── core_c.h │ │ │ │ ├── cuda.hpp │ │ │ │ ├── cuda.inl.hpp │ │ │ │ ├── cuda │ │ │ │ │ ├── block.hpp │ │ │ │ │ ├── border_interpolate.hpp │ │ │ │ │ ├── color.hpp │ │ │ │ │ ├── common.hpp │ │ │ │ │ ├── datamov_utils.hpp │ │ │ │ │ ├── detail │ │ │ │ │ │ ├── color_detail.hpp │ │ │ │ │ │ ├── reduce.hpp │ │ │ │ │ │ ├── reduce_key_val.hpp │ │ │ │ │ │ ├── transform_detail.hpp │ │ │ │ │ │ ├── type_traits_detail.hpp │ │ │ │ │ │ └── vec_distance_detail.hpp │ │ │ │ │ ├── dynamic_smem.hpp │ │ │ │ │ ├── emulation.hpp │ │ │ │ │ ├── filters.hpp │ │ │ │ │ ├── funcattrib.hpp │ │ │ │ │ ├── functional.hpp │ │ │ │ │ ├── limits.hpp │ │ │ │ │ ├── reduce.hpp │ │ │ │ │ ├── saturate_cast.hpp │ │ │ │ │ ├── scan.hpp │ │ │ │ │ ├── simd_functions.hpp │ │ │ │ │ ├── transform.hpp │ │ │ │ │ ├── type_traits.hpp │ │ │ │ │ ├── utility.hpp │ │ │ │ │ ├── vec_distance.hpp │ │ │ │ │ ├── vec_math.hpp │ │ │ │ │ ├── vec_traits.hpp │ │ │ │ │ ├── warp.hpp │ │ │ │ │ ├── warp_reduce.hpp │ │ │ │ │ └── warp_shuffle.hpp │ │ │ │ ├── cuda_stream_accessor.hpp │ │ │ │ ├── cuda_types.hpp │ │ │ │ ├── cv_cpu_dispatch.h │ │ │ │ ├── cv_cpu_helper.h │ │ │ │ ├── cvdef.h │ │ │ │ ├── cvstd.hpp │ │ │ │ ├── cvstd.inl.hpp │ │ │ │ ├── cvstd_wrapper.hpp │ │ │ │ ├── detail │ │ │ │ │ ├── async_promise.hpp │ │ │ │ │ └── exception_ptr.hpp │ │ │ │ ├── directx.hpp │ │ │ │ ├── dualquaternion.hpp │ │ │ │ ├── dualquaternion.inl.hpp │ │ │ │ ├── eigen.hpp │ │ │ │ ├── fast_math.hpp │ │ │ │ ├── hal │ │ │ │ │ ├── hal.hpp │ │ │ │ │ ├── interface.h │ │ │ │ │ ├── intrin.hpp │ │ │ │ │ ├── intrin_avx.hpp │ │ │ │ │ ├── intrin_avx512.hpp │ │ │ │ │ ├── intrin_cpp.hpp │ │ │ │ │ ├── intrin_forward.hpp │ │ │ │ │ ├── intrin_msa.hpp │ │ │ │ │ ├── intrin_neon.hpp │ │ │ │ │ ├── intrin_rvv.hpp │ │ │ │ │ ├── intrin_rvv071.hpp │ │ │ │ │ ├── intrin_sse.hpp │ │ │ │ │ ├── intrin_sse_em.hpp │ │ │ │ │ ├── intrin_vsx.hpp │ │ │ │ │ ├── intrin_wasm.hpp │ │ │ │ │ ├── msa_macros.h │ │ │ │ │ └── simd_utils.impl.hpp │ │ │ │ ├── mat.hpp │ │ │ │ ├── mat.inl.hpp │ │ │ │ ├── matx.hpp │ │ │ │ ├── neon_utils.hpp │ │ │ │ ├── ocl.hpp │ │ │ │ ├── ocl_genbase.hpp │ │ │ │ ├── opencl │ │ │ │ │ ├── ocl_defs.hpp │ │ │ │ │ ├── opencl_info.hpp │ │ │ │ │ ├── opencl_svm.hpp │ │ │ │ │ └── runtime │ │ │ │ │ │ ├── autogenerated │ │ │ │ │ │ ├── opencl_clblas.hpp │ │ │ │ │ │ ├── opencl_clfft.hpp │ │ │ │ │ │ ├── opencl_core.hpp │ │ │ │ │ │ ├── opencl_core_wrappers.hpp │ │ │ │ │ │ ├── opencl_gl.hpp │ │ │ │ │ │ └── opencl_gl_wrappers.hpp │ │ │ │ │ │ ├── opencl_clblas.hpp │ │ │ │ │ │ ├── opencl_clfft.hpp │ │ │ │ │ │ ├── opencl_core.hpp │ │ │ │ │ │ ├── opencl_core_wrappers.hpp │ │ │ │ │ │ ├── opencl_gl.hpp │ │ │ │ │ │ ├── opencl_gl_wrappers.hpp │ │ │ │ │ │ ├── opencl_svm_20.hpp │ │ │ │ │ │ ├── opencl_svm_definitions.hpp │ │ │ │ │ │ └── opencl_svm_hsa_extension.hpp │ │ │ │ ├── opengl.hpp │ │ │ │ ├── operations.hpp │ │ │ │ ├── optim.hpp │ │ │ │ ├── ovx.hpp │ │ │ │ ├── parallel │ │ │ │ │ ├── backend │ │ │ │ │ │ ├── parallel_for.openmp.hpp │ │ │ │ │ │ └── parallel_for.tbb.hpp │ │ │ │ │ └── parallel_backend.hpp │ │ │ │ ├── persistence.hpp │ │ │ │ ├── quaternion.hpp │ │ │ │ ├── quaternion.inl.hpp │ │ │ │ ├── saturate.hpp │ │ │ │ ├── simd_intrinsics.hpp │ │ │ │ ├── softfloat.hpp │ │ │ │ ├── sse_utils.hpp │ │ │ │ ├── traits.hpp │ │ │ │ ├── types.hpp │ │ │ │ ├── types_c.h │ │ │ │ ├── utility.hpp │ │ │ │ ├── utils │ │ │ │ │ ├── allocator_stats.hpp │ │ │ │ │ ├── allocator_stats.impl.hpp │ │ │ │ │ ├── filesystem.hpp │ │ │ │ │ ├── instrumentation.hpp │ │ │ │ │ ├── logger.defines.hpp │ │ │ │ │ ├── logger.hpp │ │ │ │ │ ├── logtag.hpp │ │ │ │ │ ├── tls.hpp │ │ │ │ │ └── trace.hpp │ │ │ │ ├── va_intel.hpp │ │ │ │ ├── version.hpp │ │ │ │ └── vsx_utils.hpp │ │ │ │ ├── cvconfig.h │ │ │ │ ├── features2d.hpp │ │ │ │ ├── features2d │ │ │ │ ├── features2d.hpp │ │ │ │ └── hal │ │ │ │ │ └── interface.h │ │ │ │ ├── highgui.hpp │ │ │ │ ├── highgui │ │ │ │ └── highgui.hpp │ │ │ │ ├── imgproc.hpp │ │ │ │ ├── imgproc │ │ │ │ ├── bindings.hpp │ │ │ │ ├── detail │ │ │ │ │ └── gcgraph.hpp │ │ │ │ ├── hal │ │ │ │ │ ├── hal.hpp │ │ │ │ │ └── interface.h │ │ │ │ ├── imgproc.hpp │ │ │ │ ├── imgproc_c.h │ │ │ │ ├── segmentation.hpp │ │ │ │ └── types_c.h │ │ │ │ ├── opencv.hpp │ │ │ │ ├── opencv_modules.hpp │ │ │ │ ├── photo.hpp │ │ │ │ ├── photo │ │ │ │ ├── cuda.hpp │ │ │ │ ├── legacy │ │ │ │ │ └── constants_c.h │ │ │ │ └── photo.hpp │ │ │ │ ├── video.hpp │ │ │ │ └── video │ │ │ │ ├── background_segm.hpp │ │ │ │ ├── detail │ │ │ │ └── tracking.detail.hpp │ │ │ │ ├── legacy │ │ │ │ └── constants_c.h │ │ │ │ ├── tracking.hpp │ │ │ │ └── video.hpp │ │ │ └── staticlibs │ │ │ ├── arm64-v8a │ │ │ ├── libopencv_core.a │ │ │ ├── libopencv_features2d.a │ │ │ ├── libopencv_highgui.a │ │ │ ├── libopencv_imgproc.a │ │ │ ├── libopencv_photo.a │ │ │ └── libopencv_video.a │ │ │ ├── armeabi-v7a │ │ │ ├── libopencv_core.a │ │ │ ├── libopencv_features2d.a │ │ │ ├── libopencv_highgui.a │ │ │ ├── libopencv_imgproc.a │ │ │ ├── libopencv_photo.a │ │ │ └── libopencv_video.a │ │ │ ├── x86 │ │ │ ├── libopencv_core.a │ │ │ ├── libopencv_features2d.a │ │ │ ├── libopencv_highgui.a │ │ │ ├── libopencv_imgproc.a │ │ │ ├── libopencv_photo.a │ │ │ └── libopencv_video.a │ │ │ └── x86_64 │ │ │ ├── libopencv_core.a │ │ │ ├── libopencv_features2d.a │ │ │ ├── libopencv_highgui.a │ │ │ ├── libopencv_imgproc.a │ │ │ ├── libopencv_photo.a │ │ │ └── libopencv_video.a │ ├── yolox.cpp │ ├── yolox.h │ └── yoloxncnn.cpp │ └── res │ ├── layout │ └── activity_main.xml │ └── values │ └── strings.xml ├── build.gradle ├── docs ├── 177433672-4bb84c52-ac42-41ee-a5c3-0f1bbb02d4d5.png ├── Android_Architecture_jni.drawio └── Android_Architecture_jni.png ├── git ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── settings.gradle /.gitignore: -------------------------------------------------------------------------------- 1 | # Built application files 2 | *.apk 3 | *.aar 4 | *.ap_ 5 | *.aab 6 | 7 | # Files for the ART/Dalvik VM 8 | *.dex 9 | 10 | # Java class files 11 | *.class 12 | 13 | # Generated files 14 | bin/ 15 | gen/ 16 | out/ 17 | # Uncomment the following line in case you need and you don't have the release build type files in your app 18 | # release/ 19 | 20 | # Gradle files 21 | .gradle/ 22 | build/ 23 | 24 | # Local configuration file (sdk path, etc) 25 | local.properties 26 | 27 | # Proguard folder generated by Eclipse 28 | proguard/ 29 | 30 | # Log Files 31 | *.log 32 | 33 | # Android Studio Navigation editor temp files 34 | .navigation/ 35 | 36 | # Android Studio captures folder 37 | captures/ 38 | 39 | # IntelliJ 40 | *.iml 41 | .idea/workspace.xml 42 | .idea/tasks.xml 43 | .idea/gradle.xml 44 | .idea/assetWizardSettings.xml 45 | .idea/dictionaries 46 | .idea/libraries 47 | # Android Studio 3 in .gitignore file. 48 | .idea/caches 49 | .idea/modules.xml 50 | # Comment next line if keeping position of elements in Navigation Editor is relevant for you 51 | .idea/navEditor.xml 52 | 53 | # Keystore files 54 | # Uncomment the following lines if you do not want to check your keystore files in. 55 | #*.jks 56 | #*.keystore 57 | 58 | # External native build folder generated in Android Studio 2.2 and later 59 | .externalNativeBuild 60 | .cxx/ 61 | 62 | # Google Services (e.g. APIs or Firebase) 63 | # google-services.json 64 | 65 | # Freeline 66 | freeline.py 67 | freeline/ 68 | freeline_project_description.json 69 | 70 | # fastlane 71 | fastlane/report.xml 72 | fastlane/Preview.html 73 | fastlane/screenshots 74 | fastlane/test_output 75 | fastlane/readme.md 76 | 77 | # Version control 78 | vcs.xml 79 | 80 | # lint 81 | lint/intermediates/ 82 | lint/generated/ 83 | lint/outputs/ 84 | lint/tmp/ 85 | # lint/reports/ 86 | 87 | -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | -------------------------------------------------------------------------------- /.idea/compiler.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /.idea/jarRepositories.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 9 | 10 | 14 | 15 | 19 | 20 | 24 | 25 | 29 | 30 | -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 2 | # Disclaimer 3 | Credit for this project should go to: https://github.com/nihui. I merely made some slight adjustments. 4 | # What's new 5 | 6 | ✔️ Get detected Object's information (Label, Position and Bounding Box) 7 | 8 | This repository implements a callback from the C++ Layer to the Android Layer using JNI (java native interface). 9 | This essentially means you can access information about the detected object comfortably from the Java Layer. 10 | The following diagram focuses on particular aspects and layers of the architecture. 11 | 12 | ![](docs/Android_Architecture_jni.png) 13 | In code, this boils down to a callback method in `MainActivity`. This method is called by the native (C/C++) Layer. (This happens several times per second) 14 | ```Java 15 | public void callback(String output, String probability, String x, String y, String width, String height) { 16 | runOnUiThread(new Runnable() { 17 | @Override 18 | public void run() { 19 | binding.textViewCurrentLabel.setText(String.format("label: %s, \nprobability: %s, Rect: [x: %s, y: %s, width: %s, height: %s ]", 20 | output, probability, x, y, width, height)); 21 | } 22 | }); 23 | } 24 | ``` 25 | # Demo 26 | ![](docs/177433672-4bb84c52-ac42-41ee-a5c3-0f1bbb02d4d5.png) 27 | 28 | # ncnn-android-yolo5 29 | This is a sample ncnn android project, it depends on ncnn library and opencv 30 | 31 | https://github.com/Tencent/ncnn 32 | 33 | https://github.com/nihui/opencv-mobile 34 | 35 | 36 | 37 | ## how to build and run 38 | ### step1 39 | https://github.com/Tencent/ncnn/releases 40 | 41 | * Download ncnn-YYYYMMDD-android-vulkan.zip or build ncnn for android yourself 42 | * Extract ncnn-YYYYMMDD-android-vulkan.zip into **app/src/main/jni** and change the **ncnn_DIR** path to yours in **app/src/main/jni/CMakeLists.txt** 43 | 44 | ### step2 45 | https://github.com/nihui/opencv-mobile 46 | 47 | * Download opencv-mobile-XYZ-android.zip 48 | * Extract opencv-mobile-XYZ-android.zip into **app/src/main/jni** and change the **OpenCV_DIR** path to yours in **app/src/main/jni/CMakeLists.txt** 49 | 50 | -------------------------------------------------------------------------------- /app/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'com.android.application' 2 | 3 | android { 4 | compileSdkVersion 32 5 | 6 | defaultConfig { 7 | applicationId "com.tencent.ncnnyolox" 8 | archivesBaseName = "$applicationId" 9 | targetSdk 29 10 | minSdkVersion 24 11 | } 12 | 13 | externalNativeBuild { 14 | cmake { 15 | version "3.10.2" 16 | path file('src/main/jni/CMakeLists.txt') 17 | } 18 | } 19 | buildFeatures { 20 | viewBinding = true 21 | } 22 | 23 | 24 | android { 25 | ndkVersion "23.2.8568313" 26 | } 27 | 28 | 29 | dependencies { 30 | implementation 'androidx.appcompat:appcompat:1.5.1' 31 | implementation 'com.google.android.material:material:1.6.1' 32 | implementation 'androidx.constraintlayout:constraintlayout:2.1.4' 33 | implementation 'androidx.navigation:navigation-fragment:2.5.2' 34 | implementation 'androidx.navigation:navigation-ui:2.5.2' 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /app/release/output-metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "artifactType": { 4 | "type": "APK", 5 | "kind": "Directory" 6 | }, 7 | "applicationId": "com.tencent.ncnnyolox", 8 | "variantName": "release", 9 | "elements": [ 10 | { 11 | "type": "SINGLE", 12 | "filters": [], 13 | "attributes": [], 14 | "versionCode": 1, 15 | "versionName": "1.1", 16 | "outputFile": "com.tencent.ncnnyolox-release.apk" 17 | } 18 | ], 19 | "elementType": "File" 20 | } -------------------------------------------------------------------------------- /app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 17 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /app/src/main/assets/yolov5-lite.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/assets/yolov5-lite.bin -------------------------------------------------------------------------------- /app/src/main/java/com/tencent/ncnnyolox/NcnnYolox.java: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2021 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | package com.tencent.ncnnyolox; 16 | 17 | import android.content.res.AssetManager; 18 | import android.graphics.Bitmap; 19 | import android.view.Surface; 20 | 21 | public class NcnnYolox 22 | { 23 | public native boolean loadModel(AssetManager mgr, int modelid, int cpugpu); 24 | public native boolean openCamera(int facing); 25 | public native boolean closeCamera(); 26 | public native boolean setOutputWindow(Surface surface); 27 | 28 | /** Inject a reference into the native layer to this object (MainActivity) */ 29 | public native boolean injectObjectReference(MainActivity mainActivity); 30 | 31 | static { 32 | System.loadLibrary("ncnnyolox"); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /app/src/main/java/com/tencent/ncnnyolox/pixelcopy/ImageCopyRequest.java: -------------------------------------------------------------------------------- 1 | package com.tencent.ncnnyolox.pixelcopy; 2 | 3 | import android.graphics.Bitmap; 4 | import android.graphics.Canvas; 5 | import android.os.Handler; 6 | import android.util.Log; 7 | import android.view.PixelCopy; 8 | import android.view.SurfaceView; 9 | 10 | /** 11 | * This is a class to copy the contents of SurfaceView. 12 | * It makes use of PixelCopyCallback. 13 | * Use Like this: ImageCopyRequest copyRequest = new ImageCopyRequest(surfaceView); 14 | * copyRequest.start(); 15 | */ 16 | public class ImageCopyRequest { 17 | 18 | private static final String TAG = "ImageCopyRequest"; 19 | final SurfaceView cameraview; 20 | PixelCopyCallback pixelCopyCallback; 21 | boolean setHasPermissionToSave; 22 | 23 | public ImageCopyRequest(SurfaceView camerview) { 24 | cameraview = camerview; 25 | } 26 | 27 | public void start() { 28 | Log.d(TAG, " Starting ImageCopyRequest"); 29 | 30 | if (!setHasPermissionToSave) { 31 | Log.e(TAG, "Fatal: Image copy initialization started before we know for sure we have permissions. "); 32 | return; 33 | } 34 | pixelCopyCallback = new PixelCopyCallback(); 35 | try { 36 | copyBitmapAndAttachListener(cameraview, pixelCopyCallback); 37 | } catch (Exception e) { 38 | e.printStackTrace(); 39 | } 40 | 41 | } 42 | public void copyBitmapAndAttachListener(SurfaceView view, PostTake callback) { 43 | Bitmap bitmap = Bitmap.createBitmap(view.getWidth(), view.getHeight(), 44 | Bitmap.Config.ARGB_8888); 45 | 46 | PixelCopy.OnPixelCopyFinishedListener listener = 47 | copyResult -> { 48 | if (copyResult == PixelCopy.SUCCESS) { 49 | callback.onSuccess(bitmap); 50 | } else { 51 | callback.onFailure(copyResult); 52 | } 53 | }; 54 | try { 55 | Log.d(TAG, "Starting PixelCopy"); 56 | PixelCopy.request(view, bitmap, listener, new Handler()); 57 | } catch (Exception e) { 58 | Log.e(TAG, "failed: PixelCopy.request(view, bitmap, listener, new Handler());"); 59 | e.printStackTrace(); 60 | } 61 | } 62 | 63 | 64 | public void setHasPermissionToSave(boolean value) { 65 | this.setHasPermissionToSave = value; 66 | } 67 | 68 | 69 | } 70 | -------------------------------------------------------------------------------- /app/src/main/java/com/tencent/ncnnyolox/pixelcopy/PixelCopyCallback.java: -------------------------------------------------------------------------------- 1 | package com.tencent.ncnnyolox.pixelcopy; 2 | 3 | import android.graphics.Bitmap; 4 | import android.os.Environment; 5 | import android.util.Log; 6 | 7 | import java.io.ByteArrayOutputStream; 8 | import java.io.File; 9 | import java.io.FileOutputStream; 10 | import java.io.IOException; 11 | 12 | /** 13 | * This class implements the callback after ImageProcessor as initialized the Copy process. 14 | */ 15 | public class PixelCopyCallback implements PostTake { 16 | private static final String TAG = "PixelCopyCallback"; 17 | 18 | 19 | @Override 20 | public void onSuccess(Bitmap bitmap) { 21 | Log.d(TAG, "onSuccess!"); 22 | saveBitmap(bitmap); 23 | } 24 | 25 | @Override 26 | public void onFailure(int error) { 27 | Log.e(TAG, "onFailure!"); 28 | 29 | } 30 | 31 | public void saveBitmap(Bitmap bmp) { 32 | final String filename = "test_image_pixel_copy.jpg"; 33 | try { 34 | ByteArrayOutputStream bytes = new ByteArrayOutputStream(); 35 | bmp.compress(Bitmap.CompressFormat.JPEG, 60, bytes); 36 | File f = new File(Environment.getExternalStorageDirectory() 37 | + File.separator + filename); 38 | f.createNewFile(); 39 | FileOutputStream fo = new FileOutputStream(f); 40 | fo.write(bytes.toByteArray()); 41 | fo.close(); 42 | } catch (IOException e) { 43 | Log.d(TAG, "failed to save bitmap in PixelCopyCallback." + 44 | "Probably need to get Android permissions first. "); 45 | e.printStackTrace(); 46 | } 47 | 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /app/src/main/java/com/tencent/ncnnyolox/pixelcopy/PostTake.java: -------------------------------------------------------------------------------- 1 | package com.tencent.ncnnyolox.pixelcopy; 2 | 3 | import android.graphics.Bitmap; 4 | 5 | /** 6 | * I copy image data from the SurfaceView cameraView. 7 | * PixelCopy requires to attach a callback to the listener. 8 | */ 9 | public interface PostTake { 10 | 11 | /** 12 | * Most of the time, you want to do something with the Image data, probably save to disk. 13 | * @param bitmap the Bitmap we copied from the screen. 14 | */ 15 | void onSuccess(Bitmap bitmap); 16 | 17 | /** 18 | * The attempt to copy failed. 19 | */ 20 | void onFailure(int error); 21 | } -------------------------------------------------------------------------------- /app/src/main/jni/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project(YOLOv5ss) 2 | 3 | cmake_minimum_required(VERSION 3.10) 4 | 5 | set(OpenCV_DIR ${CMAKE_SOURCE_DIR}/opencv-mobile-4.5.3-android/sdk/native/jni) 6 | find_package(OpenCV REQUIRED core imgproc) 7 | 8 | set(ncnn_DIR ${CMAKE_SOURCE_DIR}/ncnn-20220701-android-vulkan/${ANDROID_ABI}/lib/cmake/ncnn) 9 | find_package(ncnn REQUIRED) 10 | 11 | add_library(ncnnyolox SHARED yoloxncnn.cpp yolox.cpp ndkcamera.cpp) 12 | 13 | target_link_libraries(ncnnyolox ncnn ${OpenCV_LIBS} camera2ndk mediandk) 14 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/include/glslang/Include/InitializeGlobals.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2002-2005 3Dlabs Inc. Ltd. 3 | // All rights reserved. 4 | // 5 | // Redistribution and use in source and binary forms, with or without 6 | // modification, are permitted provided that the following conditions 7 | // are met: 8 | // 9 | // Redistributions of source code must retain the above copyright 10 | // notice, this list of conditions and the following disclaimer. 11 | // 12 | // Redistributions in binary form must reproduce the above 13 | // copyright notice, this list of conditions and the following 14 | // disclaimer in the documentation and/or other materials provided 15 | // with the distribution. 16 | // 17 | // Neither the name of 3Dlabs Inc. Ltd. nor the names of its 18 | // contributors may be used to endorse or promote products derived 19 | // from this software without specific prior written permission. 20 | // 21 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 24 | // FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 25 | // COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 26 | // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 27 | // BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 28 | // LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 29 | // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30 | // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 31 | // ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 32 | // POSSIBILITY OF SUCH DAMAGE. 33 | // 34 | 35 | #ifndef __INITIALIZE_GLOBALS_INCLUDED_ 36 | #define __INITIALIZE_GLOBALS_INCLUDED_ 37 | 38 | namespace glslang { 39 | 40 | bool InitializePoolIndex(); 41 | 42 | } // end namespace glslang 43 | 44 | #endif // __INITIALIZE_GLOBALS_INCLUDED_ 45 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/include/glslang/MachineIndependent/RemoveTree.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2002-2005 3Dlabs Inc. Ltd. 3 | // All rights reserved. 4 | // 5 | // Redistribution and use in source and binary forms, with or without 6 | // modification, are permitted provided that the following conditions 7 | // are met: 8 | // 9 | // Redistributions of source code must retain the above copyright 10 | // notice, this list of conditions and the following disclaimer. 11 | // 12 | // Redistributions in binary form must reproduce the above 13 | // copyright notice, this list of conditions and the following 14 | // disclaimer in the documentation and/or other materials provided 15 | // with the distribution. 16 | // 17 | // Neither the name of 3Dlabs Inc. Ltd. nor the names of its 18 | // contributors may be used to endorse or promote products derived 19 | // from this software without specific prior written permission. 20 | // 21 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 24 | // FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 25 | // COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 26 | // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 27 | // BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 28 | // LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 29 | // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30 | // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 31 | // ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 32 | // POSSIBILITY OF SUCH DAMAGE. 33 | // 34 | 35 | #pragma once 36 | 37 | namespace glslang { 38 | 39 | void RemoveAllTreeNodes(TIntermNode*); 40 | 41 | } // end namespace glslang 42 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/include/glslang/SPIRV/NonSemanticDebugPrintf.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2020 The Khronos Group Inc. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a 4 | // copy of this software and/or associated documentation files (the 5 | // "Materials"), to deal in the Materials without restriction, including 6 | // without limitation the rights to use, copy, modify, merge, publish, 7 | // distribute, sublicense, and/or sell copies of the Materials, and to 8 | // permit persons to whom the Materials are furnished to do so, subject to 9 | // the following conditions: 10 | // 11 | // The above copyright notice and this permission notice shall be included 12 | // in all copies or substantial portions of the Materials. 13 | // 14 | // MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS 15 | // KHRONOS STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS 16 | // SPECIFICATIONS AND HEADER INFORMATION ARE LOCATED AT 17 | // https://www.khronos.org/registry/ 18 | // 19 | // THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 20 | // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 21 | // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 22 | // IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 23 | // CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 24 | // TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 25 | // MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. 26 | // 27 | 28 | #ifndef SPIRV_UNIFIED1_NonSemanticDebugPrintf_H_ 29 | #define SPIRV_UNIFIED1_NonSemanticDebugPrintf_H_ 30 | 31 | #ifdef __cplusplus 32 | extern "C" { 33 | #endif 34 | 35 | enum { 36 | NonSemanticDebugPrintfRevision = 1, 37 | NonSemanticDebugPrintfRevision_BitWidthPadding = 0x7fffffff 38 | }; 39 | 40 | enum NonSemanticDebugPrintfInstructions { 41 | NonSemanticDebugPrintfDebugPrintf = 1, 42 | NonSemanticDebugPrintfInstructionsMax = 0x7fffffff 43 | }; 44 | 45 | 46 | #ifdef __cplusplus 47 | } 48 | #endif 49 | 50 | #endif // SPIRV_UNIFIED1_NonSemanticDebugPrintf_H_ 51 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/include/glslang/SPIRV/disassemble.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2014-2015 LunarG, Inc. 3 | // 4 | // All rights reserved. 5 | // 6 | // Redistribution and use in source and binary forms, with or without 7 | // modification, are permitted provided that the following conditions 8 | // are met: 9 | // 10 | // Redistributions of source code must retain the above copyright 11 | // notice, this list of conditions and the following disclaimer. 12 | // 13 | // Redistributions in binary form must reproduce the above 14 | // copyright notice, this list of conditions and the following 15 | // disclaimer in the documentation and/or other materials provided 16 | // with the distribution. 17 | // 18 | // Neither the name of 3Dlabs Inc. Ltd. nor the names of its 19 | // contributors may be used to endorse or promote products derived 20 | // from this software without specific prior written permission. 21 | // 22 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 23 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 24 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 25 | // FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 26 | // COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 27 | // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 28 | // BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 29 | // LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 30 | // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 31 | // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 32 | // ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 33 | // POSSIBILITY OF SUCH DAMAGE. 34 | 35 | // 36 | // Disassembler for SPIR-V. 37 | // 38 | 39 | #pragma once 40 | #ifndef disassembler_H 41 | #define disassembler_H 42 | 43 | #include 44 | #include 45 | 46 | namespace spv { 47 | 48 | // disassemble with glslang custom disassembler 49 | void Disassemble(std::ostream& out, const std::vector&); 50 | 51 | } // end namespace spv 52 | 53 | #endif // disassembler_H 54 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/include/ncnn/benchmark.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_BENCHMARK_H 16 | #define NCNN_BENCHMARK_H 17 | 18 | #include "layer.h" 19 | #include "mat.h" 20 | #include "platform.h" 21 | 22 | namespace ncnn { 23 | 24 | // get now timestamp in ms 25 | NCNN_EXPORT double get_current_time(); 26 | 27 | #if NCNN_BENCHMARK 28 | 29 | NCNN_EXPORT void benchmark(const Layer* layer, double start, double end); 30 | NCNN_EXPORT void benchmark(const Layer* layer, const Mat& bottom_blob, Mat& top_blob, double start, double end); 31 | 32 | #endif // NCNN_BENCHMARK 33 | 34 | } // namespace ncnn 35 | 36 | #endif // NCNN_BENCHMARK_H 37 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/include/ncnn/blob.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_BLOB_H 16 | #define NCNN_BLOB_H 17 | 18 | #include "mat.h" 19 | #include "platform.h" 20 | 21 | namespace ncnn { 22 | 23 | class NCNN_EXPORT Blob 24 | { 25 | public: 26 | // empty 27 | Blob(); 28 | 29 | public: 30 | #if NCNN_STRING 31 | // blob name 32 | std::string name; 33 | #endif // NCNN_STRING 34 | // layer index which produce this blob as output 35 | int producer; 36 | // layer index which need this blob as input 37 | int consumer; 38 | // shape hint 39 | Mat shape; 40 | }; 41 | 42 | } // namespace ncnn 43 | 44 | #endif // NCNN_BLOB_H 45 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/include/ncnn/layer_shader_type.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2020 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_LAYER_SHADER_TYPE_H 16 | #define NCNN_LAYER_SHADER_TYPE_H 17 | 18 | namespace ncnn { 19 | 20 | namespace LayerShaderType { 21 | enum LayerShaderType 22 | { 23 | #include "layer_shader_type_enum.h" 24 | }; 25 | } // namespace LayerShaderType 26 | 27 | } // namespace ncnn 28 | 29 | #endif // NCNN_LAYER_SHADER_TYPE_H 30 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/include/ncnn/layer_type.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_LAYER_TYPE_H 16 | #define NCNN_LAYER_TYPE_H 17 | 18 | namespace ncnn { 19 | 20 | namespace LayerType { 21 | enum LayerType 22 | { 23 | #include "layer_type_enum.h" 24 | CustomBit = (1 << 8), 25 | }; 26 | } // namespace LayerType 27 | 28 | } // namespace ncnn 29 | 30 | #endif // NCNN_LAYER_TYPE_H 31 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/include/ncnn/layer_type_enum.h: -------------------------------------------------------------------------------- 1 | // Layer Type Enum header 2 | // 3 | // This file is auto-generated by cmake, don't edit it. 4 | 5 | AbsVal = 0, 6 | ArgMax = 1, 7 | BatchNorm = 2, 8 | Bias = 3, 9 | BNLL = 4, 10 | Concat = 5, 11 | Convolution = 6, 12 | Crop = 7, 13 | Deconvolution = 8, 14 | Dropout = 9, 15 | Eltwise = 10, 16 | ELU = 11, 17 | Embed = 12, 18 | Exp = 13, 19 | Flatten = 14, 20 | InnerProduct = 15, 21 | Input = 16, 22 | Log = 17, 23 | LRN = 18, 24 | MemoryData = 19, 25 | MVN = 20, 26 | Pooling = 21, 27 | Power = 22, 28 | PReLU = 23, 29 | Proposal = 24, 30 | Reduction = 25, 31 | ReLU = 26, 32 | Reshape = 27, 33 | ROIPooling = 28, 34 | Scale = 29, 35 | Sigmoid = 30, 36 | Slice = 31, 37 | Softmax = 32, 38 | Split = 33, 39 | SPP = 34, 40 | TanH = 35, 41 | Threshold = 36, 42 | Tile = 37, 43 | RNN = 38, 44 | LSTM = 39, 45 | BinaryOp = 40, 46 | UnaryOp = 41, 47 | ConvolutionDepthWise = 42, 48 | Padding = 43, 49 | Squeeze = 44, 50 | ExpandDims = 45, 51 | Normalize = 46, 52 | Permute = 47, 53 | PriorBox = 48, 54 | DetectionOutput = 49, 55 | Interp = 50, 56 | DeconvolutionDepthWise = 51, 57 | ShuffleChannel = 52, 58 | InstanceNorm = 53, 59 | Clip = 54, 60 | Reorg = 55, 61 | YoloDetectionOutput = 56, 62 | Quantize = 57, 63 | Dequantize = 58, 64 | Yolov3DetectionOutput = 59, 65 | PSROIPooling = 60, 66 | ROIAlign = 61, 67 | Packing = 62, 68 | Requantize = 63, 69 | Cast = 64, 70 | HardSigmoid = 65, 71 | SELU = 66, 72 | HardSwish = 67, 73 | Noop = 68, 74 | PixelShuffle = 69, 75 | DeepCopy = 70, 76 | Mish = 71, 77 | StatisticsPooling = 72, 78 | Swish = 73, 79 | Gemm = 74, 80 | GroupNorm = 75, 81 | LayerNorm = 76, 82 | Softplus = 77, 83 | GRU = 78, 84 | MultiHeadAttention = 79, 85 | GELU = 80, 86 | Convolution1D = 81, 87 | Pooling1D = 82, 88 | ConvolutionDepthWise1D = 83, 89 | Convolution3D = 84, 90 | ConvolutionDepthWise3D = 85, 91 | Pooling3D = 86, 92 | MatMul = 87, 93 | Deconvolution1D = 88, 94 | DeconvolutionDepthWise1D = 89, 95 | Deconvolution3D = 90, 96 | DeconvolutionDepthWise3D = 91, 97 | Einsum = 92, 98 | DeformableConv2D = 93, 99 | 100 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/include/ncnn/modelbin.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_MODELBIN_H 16 | #define NCNN_MODELBIN_H 17 | 18 | #include "mat.h" 19 | 20 | namespace ncnn { 21 | 22 | class DataReader; 23 | class NCNN_EXPORT ModelBin 24 | { 25 | public: 26 | ModelBin(); 27 | virtual ~ModelBin(); 28 | // element type 29 | // 0 = auto 30 | // 1 = float32 31 | // 2 = float16 32 | // 3 = int8 33 | // load vec 34 | virtual Mat load(int w, int type) const = 0; 35 | // load image 36 | virtual Mat load(int w, int h, int type) const; 37 | // load dim 38 | virtual Mat load(int w, int h, int c, int type) const; 39 | // load cube 40 | virtual Mat load(int w, int h, int d, int c, int type) const; 41 | }; 42 | 43 | class ModelBinFromDataReaderPrivate; 44 | class NCNN_EXPORT ModelBinFromDataReader : public ModelBin 45 | { 46 | public: 47 | explicit ModelBinFromDataReader(const DataReader& dr); 48 | virtual ~ModelBinFromDataReader(); 49 | 50 | virtual Mat load(int w, int type) const; 51 | 52 | private: 53 | ModelBinFromDataReader(const ModelBinFromDataReader&); 54 | ModelBinFromDataReader& operator=(const ModelBinFromDataReader&); 55 | 56 | private: 57 | ModelBinFromDataReaderPrivate* const d; 58 | }; 59 | 60 | class ModelBinFromMatArrayPrivate; 61 | class NCNN_EXPORT ModelBinFromMatArray : public ModelBin 62 | { 63 | public: 64 | // construct from weight blob array 65 | explicit ModelBinFromMatArray(const Mat* weights); 66 | virtual ~ModelBinFromMatArray(); 67 | 68 | virtual Mat load(int w, int type) const; 69 | 70 | private: 71 | ModelBinFromMatArray(const ModelBinFromMatArray&); 72 | ModelBinFromMatArray& operator=(const ModelBinFromMatArray&); 73 | 74 | private: 75 | ModelBinFromMatArrayPrivate* const d; 76 | }; 77 | 78 | } // namespace ncnn 79 | 80 | #endif // NCNN_MODELBIN_H 81 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/include/ncnn/ncnn_export.h: -------------------------------------------------------------------------------- 1 | 2 | #ifndef NCNN_EXPORT_H 3 | #define NCNN_EXPORT_H 4 | 5 | #ifdef NCNN_STATIC_DEFINE 6 | # define NCNN_EXPORT 7 | # define NCNN_NO_EXPORT 8 | #else 9 | # ifndef NCNN_EXPORT 10 | # ifdef ncnn_EXPORTS 11 | /* We are building this library */ 12 | # define NCNN_EXPORT 13 | # else 14 | /* We are using this library */ 15 | # define NCNN_EXPORT 16 | # endif 17 | # endif 18 | 19 | # ifndef NCNN_NO_EXPORT 20 | # define NCNN_NO_EXPORT 21 | # endif 22 | #endif 23 | 24 | #ifndef NCNN_DEPRECATED 25 | # define NCNN_DEPRECATED __attribute__ ((__deprecated__)) 26 | #endif 27 | 28 | #ifndef NCNN_DEPRECATED_EXPORT 29 | # define NCNN_DEPRECATED_EXPORT NCNN_EXPORT NCNN_DEPRECATED 30 | #endif 31 | 32 | #ifndef NCNN_DEPRECATED_NO_EXPORT 33 | # define NCNN_DEPRECATED_NO_EXPORT NCNN_NO_EXPORT NCNN_DEPRECATED 34 | #endif 35 | 36 | #if 0 /* DEFINE_NO_DEPRECATED */ 37 | # ifndef NCNN_NO_DEPRECATED 38 | # define NCNN_NO_DEPRECATED 39 | # endif 40 | #endif 41 | 42 | #endif /* NCNN_EXPORT_H */ 43 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/include/ncnn/paramdict.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_PARAMDICT_H 16 | #define NCNN_PARAMDICT_H 17 | 18 | #include "mat.h" 19 | 20 | // at most 32 parameters 21 | #define NCNN_MAX_PARAM_COUNT 32 22 | 23 | namespace ncnn { 24 | 25 | class DataReader; 26 | class Net; 27 | class ParamDictPrivate; 28 | class NCNN_EXPORT ParamDict 29 | { 30 | public: 31 | // empty 32 | ParamDict(); 33 | 34 | virtual ~ParamDict(); 35 | 36 | // copy 37 | ParamDict(const ParamDict&); 38 | 39 | // assign 40 | ParamDict& operator=(const ParamDict&); 41 | 42 | // get type 43 | int type(int id) const; 44 | 45 | // get int 46 | int get(int id, int def) const; 47 | // get float 48 | float get(int id, float def) const; 49 | // get array 50 | Mat get(int id, const Mat& def) const; 51 | 52 | // set int 53 | void set(int id, int i); 54 | // set float 55 | void set(int id, float f); 56 | // set array 57 | void set(int id, const Mat& v); 58 | 59 | protected: 60 | friend class Net; 61 | 62 | void clear(); 63 | 64 | int load_param(const DataReader& dr); 65 | int load_param_bin(const DataReader& dr); 66 | 67 | private: 68 | ParamDictPrivate* const d; 69 | }; 70 | 71 | } // namespace ncnn 72 | 73 | #endif // NCNN_PARAMDICT_H 74 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/include/ncnn/simpleomp.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2020 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_SIMPLEOMP_H 16 | #define NCNN_SIMPLEOMP_H 17 | 18 | #include "platform.h" 19 | 20 | #if NCNN_SIMPLEOMP 21 | 22 | #include 23 | 24 | // This minimal openmp runtime implementation only supports the llvm openmp abi 25 | // and only supports #pragma omp parallel for num_threads(X) 26 | 27 | #ifdef __cplusplus 28 | extern "C" { 29 | #endif 30 | 31 | NCNN_EXPORT int omp_get_max_threads(); 32 | 33 | NCNN_EXPORT void omp_set_num_threads(int num_threads); 34 | 35 | NCNN_EXPORT int omp_get_dynamic(); 36 | 37 | NCNN_EXPORT void omp_set_dynamic(int dynamic); 38 | 39 | NCNN_EXPORT int omp_get_num_threads(); 40 | 41 | NCNN_EXPORT int omp_get_thread_num(); 42 | 43 | NCNN_EXPORT int kmp_get_blocktime(); 44 | 45 | NCNN_EXPORT void kmp_set_blocktime(int blocktime); 46 | 47 | #ifdef __cplusplus 48 | } 49 | #endif 50 | 51 | #endif // NCNN_SIMPLEOMP 52 | 53 | #endif // NCNN_SIMPLEOMP_H 54 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/lib/cmake/OGLCompilerTargets-release.cmake: -------------------------------------------------------------------------------- 1 | #---------------------------------------------------------------- 2 | # Generated CMake target import file for configuration "Release". 3 | #---------------------------------------------------------------- 4 | 5 | # Commands may need to know the format version. 6 | set(CMAKE_IMPORT_FILE_VERSION 1) 7 | 8 | # Import target "OGLCompiler" for configuration "Release" 9 | set_property(TARGET OGLCompiler APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 10 | set_target_properties(OGLCompiler PROPERTIES 11 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 12 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libOGLCompiler.a" 13 | ) 14 | 15 | list(APPEND _IMPORT_CHECK_TARGETS OGLCompiler ) 16 | list(APPEND _IMPORT_CHECK_FILES_FOR_OGLCompiler "${_IMPORT_PREFIX}/lib/libOGLCompiler.a" ) 17 | 18 | # Commands beyond this point should not need to know the version. 19 | set(CMAKE_IMPORT_FILE_VERSION) 20 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/lib/cmake/OSDependentTargets-release.cmake: -------------------------------------------------------------------------------- 1 | #---------------------------------------------------------------- 2 | # Generated CMake target import file for configuration "Release". 3 | #---------------------------------------------------------------- 4 | 5 | # Commands may need to know the format version. 6 | set(CMAKE_IMPORT_FILE_VERSION 1) 7 | 8 | # Import target "OSDependent" for configuration "Release" 9 | set_property(TARGET OSDependent APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 10 | set_target_properties(OSDependent PROPERTIES 11 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 12 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libOSDependent.a" 13 | ) 14 | 15 | list(APPEND _IMPORT_CHECK_TARGETS OSDependent ) 16 | list(APPEND _IMPORT_CHECK_FILES_FOR_OSDependent "${_IMPORT_PREFIX}/lib/libOSDependent.a" ) 17 | 18 | # Commands beyond this point should not need to know the version. 19 | set(CMAKE_IMPORT_FILE_VERSION) 20 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/lib/cmake/SPIRVTargets-release.cmake: -------------------------------------------------------------------------------- 1 | #---------------------------------------------------------------- 2 | # Generated CMake target import file for configuration "Release". 3 | #---------------------------------------------------------------- 4 | 5 | # Commands may need to know the format version. 6 | set(CMAKE_IMPORT_FILE_VERSION 1) 7 | 8 | # Import target "SPIRV" for configuration "Release" 9 | set_property(TARGET SPIRV APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 10 | set_target_properties(SPIRV PROPERTIES 11 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 12 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libSPIRV.a" 13 | ) 14 | 15 | list(APPEND _IMPORT_CHECK_TARGETS SPIRV ) 16 | list(APPEND _IMPORT_CHECK_FILES_FOR_SPIRV "${_IMPORT_PREFIX}/lib/libSPIRV.a" ) 17 | 18 | # Commands beyond this point should not need to know the version. 19 | set(CMAKE_IMPORT_FILE_VERSION) 20 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/lib/cmake/glslangTargets-release.cmake: -------------------------------------------------------------------------------- 1 | #---------------------------------------------------------------- 2 | # Generated CMake target import file for configuration "Release". 3 | #---------------------------------------------------------------- 4 | 5 | # Commands may need to know the format version. 6 | set(CMAKE_IMPORT_FILE_VERSION 1) 7 | 8 | # Import target "glslang" for configuration "Release" 9 | set_property(TARGET glslang APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 10 | set_target_properties(glslang PROPERTIES 11 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 12 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libglslang.a" 13 | ) 14 | 15 | list(APPEND _IMPORT_CHECK_TARGETS glslang ) 16 | list(APPEND _IMPORT_CHECK_FILES_FOR_glslang "${_IMPORT_PREFIX}/lib/libglslang.a" ) 17 | 18 | # Import target "MachineIndependent" for configuration "Release" 19 | set_property(TARGET MachineIndependent APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 20 | set_target_properties(MachineIndependent PROPERTIES 21 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 22 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libMachineIndependent.a" 23 | ) 24 | 25 | list(APPEND _IMPORT_CHECK_TARGETS MachineIndependent ) 26 | list(APPEND _IMPORT_CHECK_FILES_FOR_MachineIndependent "${_IMPORT_PREFIX}/lib/libMachineIndependent.a" ) 27 | 28 | # Import target "GenericCodeGen" for configuration "Release" 29 | set_property(TARGET GenericCodeGen APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 30 | set_target_properties(GenericCodeGen PROPERTIES 31 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 32 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libGenericCodeGen.a" 33 | ) 34 | 35 | list(APPEND _IMPORT_CHECK_TARGETS GenericCodeGen ) 36 | list(APPEND _IMPORT_CHECK_FILES_FOR_GenericCodeGen "${_IMPORT_PREFIX}/lib/libGenericCodeGen.a" ) 37 | 38 | # Commands beyond this point should not need to know the version. 39 | set(CMAKE_IMPORT_FILE_VERSION) 40 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/lib/cmake/ncnn/ncnn-release.cmake: -------------------------------------------------------------------------------- 1 | #---------------------------------------------------------------- 2 | # Generated CMake target import file for configuration "Release". 3 | #---------------------------------------------------------------- 4 | 5 | # Commands may need to know the format version. 6 | set(CMAKE_IMPORT_FILE_VERSION 1) 7 | 8 | # Import target "ncnn" for configuration "Release" 9 | set_property(TARGET ncnn APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 10 | set_target_properties(ncnn PROPERTIES 11 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 12 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libncnn.a" 13 | ) 14 | 15 | list(APPEND _IMPORT_CHECK_TARGETS ncnn ) 16 | list(APPEND _IMPORT_CHECK_FILES_FOR_ncnn "${_IMPORT_PREFIX}/lib/libncnn.a" ) 17 | 18 | # Commands beyond this point should not need to know the version. 19 | set(CMAKE_IMPORT_FILE_VERSION) 20 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/lib/cmake/ncnn/ncnnConfig.cmake: -------------------------------------------------------------------------------- 1 | set(NCNN_OPENMP ON) 2 | set(NCNN_THREADS ON) 3 | set(NCNN_VULKAN ON) 4 | set(NCNN_SHARED_LIB OFF) 5 | set(NCNN_SYSTEM_GLSLANG OFF) 6 | 7 | if(NCNN_OPENMP) 8 | find_package(OpenMP) 9 | endif() 10 | 11 | if(NCNN_THREADS) 12 | set(CMAKE_THREAD_PREFER_PTHREAD TRUE) 13 | set(THREADS_PREFER_PTHREAD_FLAG TRUE) 14 | find_package(Threads REQUIRED) 15 | endif() 16 | 17 | if(NCNN_VULKAN) 18 | find_package(Vulkan REQUIRED) 19 | 20 | if(NOT NCNN_SHARED_LIB) 21 | if(NCNN_SYSTEM_GLSLANG) 22 | set(GLSLANG_TARGET_DIR "") 23 | else() 24 | set(GLSLANG_TARGET_DIR "${CMAKE_CURRENT_LIST_DIR}/../../../lib/cmake") 25 | endif(NCNN_SYSTEM_GLSLANG) 26 | 27 | include(${GLSLANG_TARGET_DIR}/OSDependentTargets.cmake) 28 | include(${GLSLANG_TARGET_DIR}/OGLCompilerTargets.cmake) 29 | if(EXISTS "${GLSLANG_TARGET_DIR}/HLSLTargets.cmake") 30 | # hlsl support can be optional 31 | include("${GLSLANG_TARGET_DIR}/HLSLTargets.cmake") 32 | endif() 33 | include(${GLSLANG_TARGET_DIR}/glslangTargets.cmake) 34 | include(${GLSLANG_TARGET_DIR}/SPIRVTargets.cmake) 35 | endif() 36 | endif(NCNN_VULKAN) 37 | 38 | include(${CMAKE_CURRENT_LIST_DIR}/ncnn.cmake) 39 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/lib/libGenericCodeGen.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/lib/libGenericCodeGen.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/lib/libMachineIndependent.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/lib/libMachineIndependent.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/lib/libOGLCompiler.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/lib/libOGLCompiler.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/lib/libOSDependent.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/lib/libOSDependent.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/lib/libSPIRV.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/lib/libSPIRV.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/lib/libglslang.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/lib/libglslang.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/lib/libncnn.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/lib/libncnn.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/arm64-v8a/lib/pkgconfig/ncnn.pc: -------------------------------------------------------------------------------- 1 | prefix=${pcfiledir}/../.. 2 | librarydir=${prefix}/lib 3 | includedir=${prefix}/include 4 | 5 | Name: ncnn 6 | Description: high-performance neural network inference framework optimized for the mobile platform 7 | Version: 1.0.20220729 8 | URL: https://github.com/Tencent/ncnn 9 | Libs: -L"${librarydir}" -lncnn 10 | Cflags: -I"${includedir}" 11 | 12 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/include/glslang/Include/InitializeGlobals.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2002-2005 3Dlabs Inc. Ltd. 3 | // All rights reserved. 4 | // 5 | // Redistribution and use in source and binary forms, with or without 6 | // modification, are permitted provided that the following conditions 7 | // are met: 8 | // 9 | // Redistributions of source code must retain the above copyright 10 | // notice, this list of conditions and the following disclaimer. 11 | // 12 | // Redistributions in binary form must reproduce the above 13 | // copyright notice, this list of conditions and the following 14 | // disclaimer in the documentation and/or other materials provided 15 | // with the distribution. 16 | // 17 | // Neither the name of 3Dlabs Inc. Ltd. nor the names of its 18 | // contributors may be used to endorse or promote products derived 19 | // from this software without specific prior written permission. 20 | // 21 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 24 | // FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 25 | // COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 26 | // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 27 | // BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 28 | // LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 29 | // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30 | // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 31 | // ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 32 | // POSSIBILITY OF SUCH DAMAGE. 33 | // 34 | 35 | #ifndef __INITIALIZE_GLOBALS_INCLUDED_ 36 | #define __INITIALIZE_GLOBALS_INCLUDED_ 37 | 38 | namespace glslang { 39 | 40 | bool InitializePoolIndex(); 41 | 42 | } // end namespace glslang 43 | 44 | #endif // __INITIALIZE_GLOBALS_INCLUDED_ 45 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/include/glslang/MachineIndependent/RemoveTree.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2002-2005 3Dlabs Inc. Ltd. 3 | // All rights reserved. 4 | // 5 | // Redistribution and use in source and binary forms, with or without 6 | // modification, are permitted provided that the following conditions 7 | // are met: 8 | // 9 | // Redistributions of source code must retain the above copyright 10 | // notice, this list of conditions and the following disclaimer. 11 | // 12 | // Redistributions in binary form must reproduce the above 13 | // copyright notice, this list of conditions and the following 14 | // disclaimer in the documentation and/or other materials provided 15 | // with the distribution. 16 | // 17 | // Neither the name of 3Dlabs Inc. Ltd. nor the names of its 18 | // contributors may be used to endorse or promote products derived 19 | // from this software without specific prior written permission. 20 | // 21 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 24 | // FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 25 | // COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 26 | // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 27 | // BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 28 | // LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 29 | // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30 | // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 31 | // ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 32 | // POSSIBILITY OF SUCH DAMAGE. 33 | // 34 | 35 | #pragma once 36 | 37 | namespace glslang { 38 | 39 | void RemoveAllTreeNodes(TIntermNode*); 40 | 41 | } // end namespace glslang 42 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/include/glslang/SPIRV/NonSemanticDebugPrintf.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2020 The Khronos Group Inc. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a 4 | // copy of this software and/or associated documentation files (the 5 | // "Materials"), to deal in the Materials without restriction, including 6 | // without limitation the rights to use, copy, modify, merge, publish, 7 | // distribute, sublicense, and/or sell copies of the Materials, and to 8 | // permit persons to whom the Materials are furnished to do so, subject to 9 | // the following conditions: 10 | // 11 | // The above copyright notice and this permission notice shall be included 12 | // in all copies or substantial portions of the Materials. 13 | // 14 | // MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS 15 | // KHRONOS STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS 16 | // SPECIFICATIONS AND HEADER INFORMATION ARE LOCATED AT 17 | // https://www.khronos.org/registry/ 18 | // 19 | // THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 20 | // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 21 | // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 22 | // IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 23 | // CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 24 | // TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 25 | // MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. 26 | // 27 | 28 | #ifndef SPIRV_UNIFIED1_NonSemanticDebugPrintf_H_ 29 | #define SPIRV_UNIFIED1_NonSemanticDebugPrintf_H_ 30 | 31 | #ifdef __cplusplus 32 | extern "C" { 33 | #endif 34 | 35 | enum { 36 | NonSemanticDebugPrintfRevision = 1, 37 | NonSemanticDebugPrintfRevision_BitWidthPadding = 0x7fffffff 38 | }; 39 | 40 | enum NonSemanticDebugPrintfInstructions { 41 | NonSemanticDebugPrintfDebugPrintf = 1, 42 | NonSemanticDebugPrintfInstructionsMax = 0x7fffffff 43 | }; 44 | 45 | 46 | #ifdef __cplusplus 47 | } 48 | #endif 49 | 50 | #endif // SPIRV_UNIFIED1_NonSemanticDebugPrintf_H_ 51 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/include/glslang/SPIRV/disassemble.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2014-2015 LunarG, Inc. 3 | // 4 | // All rights reserved. 5 | // 6 | // Redistribution and use in source and binary forms, with or without 7 | // modification, are permitted provided that the following conditions 8 | // are met: 9 | // 10 | // Redistributions of source code must retain the above copyright 11 | // notice, this list of conditions and the following disclaimer. 12 | // 13 | // Redistributions in binary form must reproduce the above 14 | // copyright notice, this list of conditions and the following 15 | // disclaimer in the documentation and/or other materials provided 16 | // with the distribution. 17 | // 18 | // Neither the name of 3Dlabs Inc. Ltd. nor the names of its 19 | // contributors may be used to endorse or promote products derived 20 | // from this software without specific prior written permission. 21 | // 22 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 23 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 24 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 25 | // FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 26 | // COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 27 | // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 28 | // BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 29 | // LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 30 | // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 31 | // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 32 | // ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 33 | // POSSIBILITY OF SUCH DAMAGE. 34 | 35 | // 36 | // Disassembler for SPIR-V. 37 | // 38 | 39 | #pragma once 40 | #ifndef disassembler_H 41 | #define disassembler_H 42 | 43 | #include 44 | #include 45 | 46 | namespace spv { 47 | 48 | // disassemble with glslang custom disassembler 49 | void Disassemble(std::ostream& out, const std::vector&); 50 | 51 | } // end namespace spv 52 | 53 | #endif // disassembler_H 54 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/include/ncnn/benchmark.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_BENCHMARK_H 16 | #define NCNN_BENCHMARK_H 17 | 18 | #include "layer.h" 19 | #include "mat.h" 20 | #include "platform.h" 21 | 22 | namespace ncnn { 23 | 24 | // get now timestamp in ms 25 | NCNN_EXPORT double get_current_time(); 26 | 27 | #if NCNN_BENCHMARK 28 | 29 | NCNN_EXPORT void benchmark(const Layer* layer, double start, double end); 30 | NCNN_EXPORT void benchmark(const Layer* layer, const Mat& bottom_blob, Mat& top_blob, double start, double end); 31 | 32 | #endif // NCNN_BENCHMARK 33 | 34 | } // namespace ncnn 35 | 36 | #endif // NCNN_BENCHMARK_H 37 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/include/ncnn/blob.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_BLOB_H 16 | #define NCNN_BLOB_H 17 | 18 | #include "mat.h" 19 | #include "platform.h" 20 | 21 | namespace ncnn { 22 | 23 | class NCNN_EXPORT Blob 24 | { 25 | public: 26 | // empty 27 | Blob(); 28 | 29 | public: 30 | #if NCNN_STRING 31 | // blob name 32 | std::string name; 33 | #endif // NCNN_STRING 34 | // layer index which produce this blob as output 35 | int producer; 36 | // layer index which need this blob as input 37 | int consumer; 38 | // shape hint 39 | Mat shape; 40 | }; 41 | 42 | } // namespace ncnn 43 | 44 | #endif // NCNN_BLOB_H 45 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/include/ncnn/layer_shader_type.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2020 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_LAYER_SHADER_TYPE_H 16 | #define NCNN_LAYER_SHADER_TYPE_H 17 | 18 | namespace ncnn { 19 | 20 | namespace LayerShaderType { 21 | enum LayerShaderType 22 | { 23 | #include "layer_shader_type_enum.h" 24 | }; 25 | } // namespace LayerShaderType 26 | 27 | } // namespace ncnn 28 | 29 | #endif // NCNN_LAYER_SHADER_TYPE_H 30 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/include/ncnn/layer_type.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_LAYER_TYPE_H 16 | #define NCNN_LAYER_TYPE_H 17 | 18 | namespace ncnn { 19 | 20 | namespace LayerType { 21 | enum LayerType 22 | { 23 | #include "layer_type_enum.h" 24 | CustomBit = (1 << 8), 25 | }; 26 | } // namespace LayerType 27 | 28 | } // namespace ncnn 29 | 30 | #endif // NCNN_LAYER_TYPE_H 31 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/include/ncnn/layer_type_enum.h: -------------------------------------------------------------------------------- 1 | // Layer Type Enum header 2 | // 3 | // This file is auto-generated by cmake, don't edit it. 4 | 5 | AbsVal = 0, 6 | ArgMax = 1, 7 | BatchNorm = 2, 8 | Bias = 3, 9 | BNLL = 4, 10 | Concat = 5, 11 | Convolution = 6, 12 | Crop = 7, 13 | Deconvolution = 8, 14 | Dropout = 9, 15 | Eltwise = 10, 16 | ELU = 11, 17 | Embed = 12, 18 | Exp = 13, 19 | Flatten = 14, 20 | InnerProduct = 15, 21 | Input = 16, 22 | Log = 17, 23 | LRN = 18, 24 | MemoryData = 19, 25 | MVN = 20, 26 | Pooling = 21, 27 | Power = 22, 28 | PReLU = 23, 29 | Proposal = 24, 30 | Reduction = 25, 31 | ReLU = 26, 32 | Reshape = 27, 33 | ROIPooling = 28, 34 | Scale = 29, 35 | Sigmoid = 30, 36 | Slice = 31, 37 | Softmax = 32, 38 | Split = 33, 39 | SPP = 34, 40 | TanH = 35, 41 | Threshold = 36, 42 | Tile = 37, 43 | RNN = 38, 44 | LSTM = 39, 45 | BinaryOp = 40, 46 | UnaryOp = 41, 47 | ConvolutionDepthWise = 42, 48 | Padding = 43, 49 | Squeeze = 44, 50 | ExpandDims = 45, 51 | Normalize = 46, 52 | Permute = 47, 53 | PriorBox = 48, 54 | DetectionOutput = 49, 55 | Interp = 50, 56 | DeconvolutionDepthWise = 51, 57 | ShuffleChannel = 52, 58 | InstanceNorm = 53, 59 | Clip = 54, 60 | Reorg = 55, 61 | YoloDetectionOutput = 56, 62 | Quantize = 57, 63 | Dequantize = 58, 64 | Yolov3DetectionOutput = 59, 65 | PSROIPooling = 60, 66 | ROIAlign = 61, 67 | Packing = 62, 68 | Requantize = 63, 69 | Cast = 64, 70 | HardSigmoid = 65, 71 | SELU = 66, 72 | HardSwish = 67, 73 | Noop = 68, 74 | PixelShuffle = 69, 75 | DeepCopy = 70, 76 | Mish = 71, 77 | StatisticsPooling = 72, 78 | Swish = 73, 79 | Gemm = 74, 80 | GroupNorm = 75, 81 | LayerNorm = 76, 82 | Softplus = 77, 83 | GRU = 78, 84 | MultiHeadAttention = 79, 85 | GELU = 80, 86 | Convolution1D = 81, 87 | Pooling1D = 82, 88 | ConvolutionDepthWise1D = 83, 89 | Convolution3D = 84, 90 | ConvolutionDepthWise3D = 85, 91 | Pooling3D = 86, 92 | MatMul = 87, 93 | Deconvolution1D = 88, 94 | DeconvolutionDepthWise1D = 89, 95 | Deconvolution3D = 90, 96 | DeconvolutionDepthWise3D = 91, 97 | Einsum = 92, 98 | DeformableConv2D = 93, 99 | 100 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/include/ncnn/modelbin.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_MODELBIN_H 16 | #define NCNN_MODELBIN_H 17 | 18 | #include "mat.h" 19 | 20 | namespace ncnn { 21 | 22 | class DataReader; 23 | class NCNN_EXPORT ModelBin 24 | { 25 | public: 26 | ModelBin(); 27 | virtual ~ModelBin(); 28 | // element type 29 | // 0 = auto 30 | // 1 = float32 31 | // 2 = float16 32 | // 3 = int8 33 | // load vec 34 | virtual Mat load(int w, int type) const = 0; 35 | // load image 36 | virtual Mat load(int w, int h, int type) const; 37 | // load dim 38 | virtual Mat load(int w, int h, int c, int type) const; 39 | // load cube 40 | virtual Mat load(int w, int h, int d, int c, int type) const; 41 | }; 42 | 43 | class ModelBinFromDataReaderPrivate; 44 | class NCNN_EXPORT ModelBinFromDataReader : public ModelBin 45 | { 46 | public: 47 | explicit ModelBinFromDataReader(const DataReader& dr); 48 | virtual ~ModelBinFromDataReader(); 49 | 50 | virtual Mat load(int w, int type) const; 51 | 52 | private: 53 | ModelBinFromDataReader(const ModelBinFromDataReader&); 54 | ModelBinFromDataReader& operator=(const ModelBinFromDataReader&); 55 | 56 | private: 57 | ModelBinFromDataReaderPrivate* const d; 58 | }; 59 | 60 | class ModelBinFromMatArrayPrivate; 61 | class NCNN_EXPORT ModelBinFromMatArray : public ModelBin 62 | { 63 | public: 64 | // construct from weight blob array 65 | explicit ModelBinFromMatArray(const Mat* weights); 66 | virtual ~ModelBinFromMatArray(); 67 | 68 | virtual Mat load(int w, int type) const; 69 | 70 | private: 71 | ModelBinFromMatArray(const ModelBinFromMatArray&); 72 | ModelBinFromMatArray& operator=(const ModelBinFromMatArray&); 73 | 74 | private: 75 | ModelBinFromMatArrayPrivate* const d; 76 | }; 77 | 78 | } // namespace ncnn 79 | 80 | #endif // NCNN_MODELBIN_H 81 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/include/ncnn/ncnn_export.h: -------------------------------------------------------------------------------- 1 | 2 | #ifndef NCNN_EXPORT_H 3 | #define NCNN_EXPORT_H 4 | 5 | #ifdef NCNN_STATIC_DEFINE 6 | # define NCNN_EXPORT 7 | # define NCNN_NO_EXPORT 8 | #else 9 | # ifndef NCNN_EXPORT 10 | # ifdef ncnn_EXPORTS 11 | /* We are building this library */ 12 | # define NCNN_EXPORT 13 | # else 14 | /* We are using this library */ 15 | # define NCNN_EXPORT 16 | # endif 17 | # endif 18 | 19 | # ifndef NCNN_NO_EXPORT 20 | # define NCNN_NO_EXPORT 21 | # endif 22 | #endif 23 | 24 | #ifndef NCNN_DEPRECATED 25 | # define NCNN_DEPRECATED __attribute__ ((__deprecated__)) 26 | #endif 27 | 28 | #ifndef NCNN_DEPRECATED_EXPORT 29 | # define NCNN_DEPRECATED_EXPORT NCNN_EXPORT NCNN_DEPRECATED 30 | #endif 31 | 32 | #ifndef NCNN_DEPRECATED_NO_EXPORT 33 | # define NCNN_DEPRECATED_NO_EXPORT NCNN_NO_EXPORT NCNN_DEPRECATED 34 | #endif 35 | 36 | #if 0 /* DEFINE_NO_DEPRECATED */ 37 | # ifndef NCNN_NO_DEPRECATED 38 | # define NCNN_NO_DEPRECATED 39 | # endif 40 | #endif 41 | 42 | #endif /* NCNN_EXPORT_H */ 43 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/include/ncnn/paramdict.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_PARAMDICT_H 16 | #define NCNN_PARAMDICT_H 17 | 18 | #include "mat.h" 19 | 20 | // at most 32 parameters 21 | #define NCNN_MAX_PARAM_COUNT 32 22 | 23 | namespace ncnn { 24 | 25 | class DataReader; 26 | class Net; 27 | class ParamDictPrivate; 28 | class NCNN_EXPORT ParamDict 29 | { 30 | public: 31 | // empty 32 | ParamDict(); 33 | 34 | virtual ~ParamDict(); 35 | 36 | // copy 37 | ParamDict(const ParamDict&); 38 | 39 | // assign 40 | ParamDict& operator=(const ParamDict&); 41 | 42 | // get type 43 | int type(int id) const; 44 | 45 | // get int 46 | int get(int id, int def) const; 47 | // get float 48 | float get(int id, float def) const; 49 | // get array 50 | Mat get(int id, const Mat& def) const; 51 | 52 | // set int 53 | void set(int id, int i); 54 | // set float 55 | void set(int id, float f); 56 | // set array 57 | void set(int id, const Mat& v); 58 | 59 | protected: 60 | friend class Net; 61 | 62 | void clear(); 63 | 64 | int load_param(const DataReader& dr); 65 | int load_param_bin(const DataReader& dr); 66 | 67 | private: 68 | ParamDictPrivate* const d; 69 | }; 70 | 71 | } // namespace ncnn 72 | 73 | #endif // NCNN_PARAMDICT_H 74 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/include/ncnn/simpleomp.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2020 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_SIMPLEOMP_H 16 | #define NCNN_SIMPLEOMP_H 17 | 18 | #include "platform.h" 19 | 20 | #if NCNN_SIMPLEOMP 21 | 22 | #include 23 | 24 | // This minimal openmp runtime implementation only supports the llvm openmp abi 25 | // and only supports #pragma omp parallel for num_threads(X) 26 | 27 | #ifdef __cplusplus 28 | extern "C" { 29 | #endif 30 | 31 | NCNN_EXPORT int omp_get_max_threads(); 32 | 33 | NCNN_EXPORT void omp_set_num_threads(int num_threads); 34 | 35 | NCNN_EXPORT int omp_get_dynamic(); 36 | 37 | NCNN_EXPORT void omp_set_dynamic(int dynamic); 38 | 39 | NCNN_EXPORT int omp_get_num_threads(); 40 | 41 | NCNN_EXPORT int omp_get_thread_num(); 42 | 43 | NCNN_EXPORT int kmp_get_blocktime(); 44 | 45 | NCNN_EXPORT void kmp_set_blocktime(int blocktime); 46 | 47 | #ifdef __cplusplus 48 | } 49 | #endif 50 | 51 | #endif // NCNN_SIMPLEOMP 52 | 53 | #endif // NCNN_SIMPLEOMP_H 54 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/lib/cmake/OGLCompilerTargets-release.cmake: -------------------------------------------------------------------------------- 1 | #---------------------------------------------------------------- 2 | # Generated CMake target import file for configuration "Release". 3 | #---------------------------------------------------------------- 4 | 5 | # Commands may need to know the format version. 6 | set(CMAKE_IMPORT_FILE_VERSION 1) 7 | 8 | # Import target "OGLCompiler" for configuration "Release" 9 | set_property(TARGET OGLCompiler APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 10 | set_target_properties(OGLCompiler PROPERTIES 11 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 12 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libOGLCompiler.a" 13 | ) 14 | 15 | list(APPEND _IMPORT_CHECK_TARGETS OGLCompiler ) 16 | list(APPEND _IMPORT_CHECK_FILES_FOR_OGLCompiler "${_IMPORT_PREFIX}/lib/libOGLCompiler.a" ) 17 | 18 | # Commands beyond this point should not need to know the version. 19 | set(CMAKE_IMPORT_FILE_VERSION) 20 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/lib/cmake/OSDependentTargets-release.cmake: -------------------------------------------------------------------------------- 1 | #---------------------------------------------------------------- 2 | # Generated CMake target import file for configuration "Release". 3 | #---------------------------------------------------------------- 4 | 5 | # Commands may need to know the format version. 6 | set(CMAKE_IMPORT_FILE_VERSION 1) 7 | 8 | # Import target "OSDependent" for configuration "Release" 9 | set_property(TARGET OSDependent APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 10 | set_target_properties(OSDependent PROPERTIES 11 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 12 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libOSDependent.a" 13 | ) 14 | 15 | list(APPEND _IMPORT_CHECK_TARGETS OSDependent ) 16 | list(APPEND _IMPORT_CHECK_FILES_FOR_OSDependent "${_IMPORT_PREFIX}/lib/libOSDependent.a" ) 17 | 18 | # Commands beyond this point should not need to know the version. 19 | set(CMAKE_IMPORT_FILE_VERSION) 20 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/lib/cmake/SPIRVTargets-release.cmake: -------------------------------------------------------------------------------- 1 | #---------------------------------------------------------------- 2 | # Generated CMake target import file for configuration "Release". 3 | #---------------------------------------------------------------- 4 | 5 | # Commands may need to know the format version. 6 | set(CMAKE_IMPORT_FILE_VERSION 1) 7 | 8 | # Import target "SPIRV" for configuration "Release" 9 | set_property(TARGET SPIRV APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 10 | set_target_properties(SPIRV PROPERTIES 11 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 12 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libSPIRV.a" 13 | ) 14 | 15 | list(APPEND _IMPORT_CHECK_TARGETS SPIRV ) 16 | list(APPEND _IMPORT_CHECK_FILES_FOR_SPIRV "${_IMPORT_PREFIX}/lib/libSPIRV.a" ) 17 | 18 | # Commands beyond this point should not need to know the version. 19 | set(CMAKE_IMPORT_FILE_VERSION) 20 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/lib/cmake/glslangTargets-release.cmake: -------------------------------------------------------------------------------- 1 | #---------------------------------------------------------------- 2 | # Generated CMake target import file for configuration "Release". 3 | #---------------------------------------------------------------- 4 | 5 | # Commands may need to know the format version. 6 | set(CMAKE_IMPORT_FILE_VERSION 1) 7 | 8 | # Import target "glslang" for configuration "Release" 9 | set_property(TARGET glslang APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 10 | set_target_properties(glslang PROPERTIES 11 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 12 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libglslang.a" 13 | ) 14 | 15 | list(APPEND _IMPORT_CHECK_TARGETS glslang ) 16 | list(APPEND _IMPORT_CHECK_FILES_FOR_glslang "${_IMPORT_PREFIX}/lib/libglslang.a" ) 17 | 18 | # Import target "MachineIndependent" for configuration "Release" 19 | set_property(TARGET MachineIndependent APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 20 | set_target_properties(MachineIndependent PROPERTIES 21 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 22 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libMachineIndependent.a" 23 | ) 24 | 25 | list(APPEND _IMPORT_CHECK_TARGETS MachineIndependent ) 26 | list(APPEND _IMPORT_CHECK_FILES_FOR_MachineIndependent "${_IMPORT_PREFIX}/lib/libMachineIndependent.a" ) 27 | 28 | # Import target "GenericCodeGen" for configuration "Release" 29 | set_property(TARGET GenericCodeGen APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 30 | set_target_properties(GenericCodeGen PROPERTIES 31 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 32 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libGenericCodeGen.a" 33 | ) 34 | 35 | list(APPEND _IMPORT_CHECK_TARGETS GenericCodeGen ) 36 | list(APPEND _IMPORT_CHECK_FILES_FOR_GenericCodeGen "${_IMPORT_PREFIX}/lib/libGenericCodeGen.a" ) 37 | 38 | # Commands beyond this point should not need to know the version. 39 | set(CMAKE_IMPORT_FILE_VERSION) 40 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/lib/cmake/ncnn/ncnn-release.cmake: -------------------------------------------------------------------------------- 1 | #---------------------------------------------------------------- 2 | # Generated CMake target import file for configuration "Release". 3 | #---------------------------------------------------------------- 4 | 5 | # Commands may need to know the format version. 6 | set(CMAKE_IMPORT_FILE_VERSION 1) 7 | 8 | # Import target "ncnn" for configuration "Release" 9 | set_property(TARGET ncnn APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 10 | set_target_properties(ncnn PROPERTIES 11 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 12 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libncnn.a" 13 | ) 14 | 15 | list(APPEND _IMPORT_CHECK_TARGETS ncnn ) 16 | list(APPEND _IMPORT_CHECK_FILES_FOR_ncnn "${_IMPORT_PREFIX}/lib/libncnn.a" ) 17 | 18 | # Commands beyond this point should not need to know the version. 19 | set(CMAKE_IMPORT_FILE_VERSION) 20 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/lib/cmake/ncnn/ncnnConfig.cmake: -------------------------------------------------------------------------------- 1 | set(NCNN_OPENMP ON) 2 | set(NCNN_THREADS ON) 3 | set(NCNN_VULKAN ON) 4 | set(NCNN_SHARED_LIB OFF) 5 | set(NCNN_SYSTEM_GLSLANG OFF) 6 | 7 | if(NCNN_OPENMP) 8 | find_package(OpenMP) 9 | endif() 10 | 11 | if(NCNN_THREADS) 12 | set(CMAKE_THREAD_PREFER_PTHREAD TRUE) 13 | set(THREADS_PREFER_PTHREAD_FLAG TRUE) 14 | find_package(Threads REQUIRED) 15 | endif() 16 | 17 | if(NCNN_VULKAN) 18 | find_package(Vulkan REQUIRED) 19 | 20 | if(NOT NCNN_SHARED_LIB) 21 | if(NCNN_SYSTEM_GLSLANG) 22 | set(GLSLANG_TARGET_DIR "") 23 | else() 24 | set(GLSLANG_TARGET_DIR "${CMAKE_CURRENT_LIST_DIR}/../../../lib/cmake") 25 | endif(NCNN_SYSTEM_GLSLANG) 26 | 27 | include(${GLSLANG_TARGET_DIR}/OSDependentTargets.cmake) 28 | include(${GLSLANG_TARGET_DIR}/OGLCompilerTargets.cmake) 29 | if(EXISTS "${GLSLANG_TARGET_DIR}/HLSLTargets.cmake") 30 | # hlsl support can be optional 31 | include("${GLSLANG_TARGET_DIR}/HLSLTargets.cmake") 32 | endif() 33 | include(${GLSLANG_TARGET_DIR}/glslangTargets.cmake) 34 | include(${GLSLANG_TARGET_DIR}/SPIRVTargets.cmake) 35 | endif() 36 | endif(NCNN_VULKAN) 37 | 38 | include(${CMAKE_CURRENT_LIST_DIR}/ncnn.cmake) 39 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/lib/libGenericCodeGen.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/lib/libGenericCodeGen.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/lib/libMachineIndependent.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/lib/libMachineIndependent.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/lib/libOGLCompiler.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/lib/libOGLCompiler.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/lib/libOSDependent.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/lib/libOSDependent.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/lib/libSPIRV.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/lib/libSPIRV.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/lib/libglslang.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/lib/libglslang.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/lib/libncnn.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/lib/libncnn.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/armeabi-v7a/lib/pkgconfig/ncnn.pc: -------------------------------------------------------------------------------- 1 | prefix=${pcfiledir}/../.. 2 | librarydir=${prefix}/lib 3 | includedir=${prefix}/include 4 | 5 | Name: ncnn 6 | Description: high-performance neural network inference framework optimized for the mobile platform 7 | Version: 1.0.20220729 8 | URL: https://github.com/Tencent/ncnn 9 | Libs: -L"${librarydir}" -lncnn 10 | Cflags: -I"${includedir}" 11 | 12 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/include/glslang/Include/InitializeGlobals.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2002-2005 3Dlabs Inc. Ltd. 3 | // All rights reserved. 4 | // 5 | // Redistribution and use in source and binary forms, with or without 6 | // modification, are permitted provided that the following conditions 7 | // are met: 8 | // 9 | // Redistributions of source code must retain the above copyright 10 | // notice, this list of conditions and the following disclaimer. 11 | // 12 | // Redistributions in binary form must reproduce the above 13 | // copyright notice, this list of conditions and the following 14 | // disclaimer in the documentation and/or other materials provided 15 | // with the distribution. 16 | // 17 | // Neither the name of 3Dlabs Inc. Ltd. nor the names of its 18 | // contributors may be used to endorse or promote products derived 19 | // from this software without specific prior written permission. 20 | // 21 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 24 | // FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 25 | // COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 26 | // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 27 | // BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 28 | // LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 29 | // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30 | // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 31 | // ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 32 | // POSSIBILITY OF SUCH DAMAGE. 33 | // 34 | 35 | #ifndef __INITIALIZE_GLOBALS_INCLUDED_ 36 | #define __INITIALIZE_GLOBALS_INCLUDED_ 37 | 38 | namespace glslang { 39 | 40 | bool InitializePoolIndex(); 41 | 42 | } // end namespace glslang 43 | 44 | #endif // __INITIALIZE_GLOBALS_INCLUDED_ 45 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/include/glslang/MachineIndependent/RemoveTree.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2002-2005 3Dlabs Inc. Ltd. 3 | // All rights reserved. 4 | // 5 | // Redistribution and use in source and binary forms, with or without 6 | // modification, are permitted provided that the following conditions 7 | // are met: 8 | // 9 | // Redistributions of source code must retain the above copyright 10 | // notice, this list of conditions and the following disclaimer. 11 | // 12 | // Redistributions in binary form must reproduce the above 13 | // copyright notice, this list of conditions and the following 14 | // disclaimer in the documentation and/or other materials provided 15 | // with the distribution. 16 | // 17 | // Neither the name of 3Dlabs Inc. Ltd. nor the names of its 18 | // contributors may be used to endorse or promote products derived 19 | // from this software without specific prior written permission. 20 | // 21 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 24 | // FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 25 | // COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 26 | // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 27 | // BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 28 | // LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 29 | // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30 | // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 31 | // ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 32 | // POSSIBILITY OF SUCH DAMAGE. 33 | // 34 | 35 | #pragma once 36 | 37 | namespace glslang { 38 | 39 | void RemoveAllTreeNodes(TIntermNode*); 40 | 41 | } // end namespace glslang 42 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/include/glslang/SPIRV/NonSemanticDebugPrintf.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2020 The Khronos Group Inc. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a 4 | // copy of this software and/or associated documentation files (the 5 | // "Materials"), to deal in the Materials without restriction, including 6 | // without limitation the rights to use, copy, modify, merge, publish, 7 | // distribute, sublicense, and/or sell copies of the Materials, and to 8 | // permit persons to whom the Materials are furnished to do so, subject to 9 | // the following conditions: 10 | // 11 | // The above copyright notice and this permission notice shall be included 12 | // in all copies or substantial portions of the Materials. 13 | // 14 | // MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS 15 | // KHRONOS STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS 16 | // SPECIFICATIONS AND HEADER INFORMATION ARE LOCATED AT 17 | // https://www.khronos.org/registry/ 18 | // 19 | // THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 20 | // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 21 | // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 22 | // IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 23 | // CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 24 | // TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 25 | // MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. 26 | // 27 | 28 | #ifndef SPIRV_UNIFIED1_NonSemanticDebugPrintf_H_ 29 | #define SPIRV_UNIFIED1_NonSemanticDebugPrintf_H_ 30 | 31 | #ifdef __cplusplus 32 | extern "C" { 33 | #endif 34 | 35 | enum { 36 | NonSemanticDebugPrintfRevision = 1, 37 | NonSemanticDebugPrintfRevision_BitWidthPadding = 0x7fffffff 38 | }; 39 | 40 | enum NonSemanticDebugPrintfInstructions { 41 | NonSemanticDebugPrintfDebugPrintf = 1, 42 | NonSemanticDebugPrintfInstructionsMax = 0x7fffffff 43 | }; 44 | 45 | 46 | #ifdef __cplusplus 47 | } 48 | #endif 49 | 50 | #endif // SPIRV_UNIFIED1_NonSemanticDebugPrintf_H_ 51 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/include/glslang/SPIRV/disassemble.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2014-2015 LunarG, Inc. 3 | // 4 | // All rights reserved. 5 | // 6 | // Redistribution and use in source and binary forms, with or without 7 | // modification, are permitted provided that the following conditions 8 | // are met: 9 | // 10 | // Redistributions of source code must retain the above copyright 11 | // notice, this list of conditions and the following disclaimer. 12 | // 13 | // Redistributions in binary form must reproduce the above 14 | // copyright notice, this list of conditions and the following 15 | // disclaimer in the documentation and/or other materials provided 16 | // with the distribution. 17 | // 18 | // Neither the name of 3Dlabs Inc. Ltd. nor the names of its 19 | // contributors may be used to endorse or promote products derived 20 | // from this software without specific prior written permission. 21 | // 22 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 23 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 24 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 25 | // FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 26 | // COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 27 | // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 28 | // BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 29 | // LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 30 | // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 31 | // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 32 | // ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 33 | // POSSIBILITY OF SUCH DAMAGE. 34 | 35 | // 36 | // Disassembler for SPIR-V. 37 | // 38 | 39 | #pragma once 40 | #ifndef disassembler_H 41 | #define disassembler_H 42 | 43 | #include 44 | #include 45 | 46 | namespace spv { 47 | 48 | // disassemble with glslang custom disassembler 49 | void Disassemble(std::ostream& out, const std::vector&); 50 | 51 | } // end namespace spv 52 | 53 | #endif // disassembler_H 54 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/include/ncnn/benchmark.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_BENCHMARK_H 16 | #define NCNN_BENCHMARK_H 17 | 18 | #include "layer.h" 19 | #include "mat.h" 20 | #include "platform.h" 21 | 22 | namespace ncnn { 23 | 24 | // get now timestamp in ms 25 | NCNN_EXPORT double get_current_time(); 26 | 27 | #if NCNN_BENCHMARK 28 | 29 | NCNN_EXPORT void benchmark(const Layer* layer, double start, double end); 30 | NCNN_EXPORT void benchmark(const Layer* layer, const Mat& bottom_blob, Mat& top_blob, double start, double end); 31 | 32 | #endif // NCNN_BENCHMARK 33 | 34 | } // namespace ncnn 35 | 36 | #endif // NCNN_BENCHMARK_H 37 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/include/ncnn/blob.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_BLOB_H 16 | #define NCNN_BLOB_H 17 | 18 | #include "mat.h" 19 | #include "platform.h" 20 | 21 | namespace ncnn { 22 | 23 | class NCNN_EXPORT Blob 24 | { 25 | public: 26 | // empty 27 | Blob(); 28 | 29 | public: 30 | #if NCNN_STRING 31 | // blob name 32 | std::string name; 33 | #endif // NCNN_STRING 34 | // layer index which produce this blob as output 35 | int producer; 36 | // layer index which need this blob as input 37 | int consumer; 38 | // shape hint 39 | Mat shape; 40 | }; 41 | 42 | } // namespace ncnn 43 | 44 | #endif // NCNN_BLOB_H 45 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/include/ncnn/layer_shader_type.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2020 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_LAYER_SHADER_TYPE_H 16 | #define NCNN_LAYER_SHADER_TYPE_H 17 | 18 | namespace ncnn { 19 | 20 | namespace LayerShaderType { 21 | enum LayerShaderType 22 | { 23 | #include "layer_shader_type_enum.h" 24 | }; 25 | } // namespace LayerShaderType 26 | 27 | } // namespace ncnn 28 | 29 | #endif // NCNN_LAYER_SHADER_TYPE_H 30 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/include/ncnn/layer_type.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_LAYER_TYPE_H 16 | #define NCNN_LAYER_TYPE_H 17 | 18 | namespace ncnn { 19 | 20 | namespace LayerType { 21 | enum LayerType 22 | { 23 | #include "layer_type_enum.h" 24 | CustomBit = (1 << 8), 25 | }; 26 | } // namespace LayerType 27 | 28 | } // namespace ncnn 29 | 30 | #endif // NCNN_LAYER_TYPE_H 31 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/include/ncnn/layer_type_enum.h: -------------------------------------------------------------------------------- 1 | // Layer Type Enum header 2 | // 3 | // This file is auto-generated by cmake, don't edit it. 4 | 5 | AbsVal = 0, 6 | ArgMax = 1, 7 | BatchNorm = 2, 8 | Bias = 3, 9 | BNLL = 4, 10 | Concat = 5, 11 | Convolution = 6, 12 | Crop = 7, 13 | Deconvolution = 8, 14 | Dropout = 9, 15 | Eltwise = 10, 16 | ELU = 11, 17 | Embed = 12, 18 | Exp = 13, 19 | Flatten = 14, 20 | InnerProduct = 15, 21 | Input = 16, 22 | Log = 17, 23 | LRN = 18, 24 | MemoryData = 19, 25 | MVN = 20, 26 | Pooling = 21, 27 | Power = 22, 28 | PReLU = 23, 29 | Proposal = 24, 30 | Reduction = 25, 31 | ReLU = 26, 32 | Reshape = 27, 33 | ROIPooling = 28, 34 | Scale = 29, 35 | Sigmoid = 30, 36 | Slice = 31, 37 | Softmax = 32, 38 | Split = 33, 39 | SPP = 34, 40 | TanH = 35, 41 | Threshold = 36, 42 | Tile = 37, 43 | RNN = 38, 44 | LSTM = 39, 45 | BinaryOp = 40, 46 | UnaryOp = 41, 47 | ConvolutionDepthWise = 42, 48 | Padding = 43, 49 | Squeeze = 44, 50 | ExpandDims = 45, 51 | Normalize = 46, 52 | Permute = 47, 53 | PriorBox = 48, 54 | DetectionOutput = 49, 55 | Interp = 50, 56 | DeconvolutionDepthWise = 51, 57 | ShuffleChannel = 52, 58 | InstanceNorm = 53, 59 | Clip = 54, 60 | Reorg = 55, 61 | YoloDetectionOutput = 56, 62 | Quantize = 57, 63 | Dequantize = 58, 64 | Yolov3DetectionOutput = 59, 65 | PSROIPooling = 60, 66 | ROIAlign = 61, 67 | Packing = 62, 68 | Requantize = 63, 69 | Cast = 64, 70 | HardSigmoid = 65, 71 | SELU = 66, 72 | HardSwish = 67, 73 | Noop = 68, 74 | PixelShuffle = 69, 75 | DeepCopy = 70, 76 | Mish = 71, 77 | StatisticsPooling = 72, 78 | Swish = 73, 79 | Gemm = 74, 80 | GroupNorm = 75, 81 | LayerNorm = 76, 82 | Softplus = 77, 83 | GRU = 78, 84 | MultiHeadAttention = 79, 85 | GELU = 80, 86 | Convolution1D = 81, 87 | Pooling1D = 82, 88 | ConvolutionDepthWise1D = 83, 89 | Convolution3D = 84, 90 | ConvolutionDepthWise3D = 85, 91 | Pooling3D = 86, 92 | MatMul = 87, 93 | Deconvolution1D = 88, 94 | DeconvolutionDepthWise1D = 89, 95 | Deconvolution3D = 90, 96 | DeconvolutionDepthWise3D = 91, 97 | Einsum = 92, 98 | DeformableConv2D = 93, 99 | 100 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/include/ncnn/modelbin.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_MODELBIN_H 16 | #define NCNN_MODELBIN_H 17 | 18 | #include "mat.h" 19 | 20 | namespace ncnn { 21 | 22 | class DataReader; 23 | class NCNN_EXPORT ModelBin 24 | { 25 | public: 26 | ModelBin(); 27 | virtual ~ModelBin(); 28 | // element type 29 | // 0 = auto 30 | // 1 = float32 31 | // 2 = float16 32 | // 3 = int8 33 | // load vec 34 | virtual Mat load(int w, int type) const = 0; 35 | // load image 36 | virtual Mat load(int w, int h, int type) const; 37 | // load dim 38 | virtual Mat load(int w, int h, int c, int type) const; 39 | // load cube 40 | virtual Mat load(int w, int h, int d, int c, int type) const; 41 | }; 42 | 43 | class ModelBinFromDataReaderPrivate; 44 | class NCNN_EXPORT ModelBinFromDataReader : public ModelBin 45 | { 46 | public: 47 | explicit ModelBinFromDataReader(const DataReader& dr); 48 | virtual ~ModelBinFromDataReader(); 49 | 50 | virtual Mat load(int w, int type) const; 51 | 52 | private: 53 | ModelBinFromDataReader(const ModelBinFromDataReader&); 54 | ModelBinFromDataReader& operator=(const ModelBinFromDataReader&); 55 | 56 | private: 57 | ModelBinFromDataReaderPrivate* const d; 58 | }; 59 | 60 | class ModelBinFromMatArrayPrivate; 61 | class NCNN_EXPORT ModelBinFromMatArray : public ModelBin 62 | { 63 | public: 64 | // construct from weight blob array 65 | explicit ModelBinFromMatArray(const Mat* weights); 66 | virtual ~ModelBinFromMatArray(); 67 | 68 | virtual Mat load(int w, int type) const; 69 | 70 | private: 71 | ModelBinFromMatArray(const ModelBinFromMatArray&); 72 | ModelBinFromMatArray& operator=(const ModelBinFromMatArray&); 73 | 74 | private: 75 | ModelBinFromMatArrayPrivate* const d; 76 | }; 77 | 78 | } // namespace ncnn 79 | 80 | #endif // NCNN_MODELBIN_H 81 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/include/ncnn/ncnn_export.h: -------------------------------------------------------------------------------- 1 | 2 | #ifndef NCNN_EXPORT_H 3 | #define NCNN_EXPORT_H 4 | 5 | #ifdef NCNN_STATIC_DEFINE 6 | # define NCNN_EXPORT 7 | # define NCNN_NO_EXPORT 8 | #else 9 | # ifndef NCNN_EXPORT 10 | # ifdef ncnn_EXPORTS 11 | /* We are building this library */ 12 | # define NCNN_EXPORT 13 | # else 14 | /* We are using this library */ 15 | # define NCNN_EXPORT 16 | # endif 17 | # endif 18 | 19 | # ifndef NCNN_NO_EXPORT 20 | # define NCNN_NO_EXPORT 21 | # endif 22 | #endif 23 | 24 | #ifndef NCNN_DEPRECATED 25 | # define NCNN_DEPRECATED __attribute__ ((__deprecated__)) 26 | #endif 27 | 28 | #ifndef NCNN_DEPRECATED_EXPORT 29 | # define NCNN_DEPRECATED_EXPORT NCNN_EXPORT NCNN_DEPRECATED 30 | #endif 31 | 32 | #ifndef NCNN_DEPRECATED_NO_EXPORT 33 | # define NCNN_DEPRECATED_NO_EXPORT NCNN_NO_EXPORT NCNN_DEPRECATED 34 | #endif 35 | 36 | #if 0 /* DEFINE_NO_DEPRECATED */ 37 | # ifndef NCNN_NO_DEPRECATED 38 | # define NCNN_NO_DEPRECATED 39 | # endif 40 | #endif 41 | 42 | #endif /* NCNN_EXPORT_H */ 43 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/include/ncnn/paramdict.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_PARAMDICT_H 16 | #define NCNN_PARAMDICT_H 17 | 18 | #include "mat.h" 19 | 20 | // at most 32 parameters 21 | #define NCNN_MAX_PARAM_COUNT 32 22 | 23 | namespace ncnn { 24 | 25 | class DataReader; 26 | class Net; 27 | class ParamDictPrivate; 28 | class NCNN_EXPORT ParamDict 29 | { 30 | public: 31 | // empty 32 | ParamDict(); 33 | 34 | virtual ~ParamDict(); 35 | 36 | // copy 37 | ParamDict(const ParamDict&); 38 | 39 | // assign 40 | ParamDict& operator=(const ParamDict&); 41 | 42 | // get type 43 | int type(int id) const; 44 | 45 | // get int 46 | int get(int id, int def) const; 47 | // get float 48 | float get(int id, float def) const; 49 | // get array 50 | Mat get(int id, const Mat& def) const; 51 | 52 | // set int 53 | void set(int id, int i); 54 | // set float 55 | void set(int id, float f); 56 | // set array 57 | void set(int id, const Mat& v); 58 | 59 | protected: 60 | friend class Net; 61 | 62 | void clear(); 63 | 64 | int load_param(const DataReader& dr); 65 | int load_param_bin(const DataReader& dr); 66 | 67 | private: 68 | ParamDictPrivate* const d; 69 | }; 70 | 71 | } // namespace ncnn 72 | 73 | #endif // NCNN_PARAMDICT_H 74 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/include/ncnn/simpleomp.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2020 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_SIMPLEOMP_H 16 | #define NCNN_SIMPLEOMP_H 17 | 18 | #include "platform.h" 19 | 20 | #if NCNN_SIMPLEOMP 21 | 22 | #include 23 | 24 | // This minimal openmp runtime implementation only supports the llvm openmp abi 25 | // and only supports #pragma omp parallel for num_threads(X) 26 | 27 | #ifdef __cplusplus 28 | extern "C" { 29 | #endif 30 | 31 | NCNN_EXPORT int omp_get_max_threads(); 32 | 33 | NCNN_EXPORT void omp_set_num_threads(int num_threads); 34 | 35 | NCNN_EXPORT int omp_get_dynamic(); 36 | 37 | NCNN_EXPORT void omp_set_dynamic(int dynamic); 38 | 39 | NCNN_EXPORT int omp_get_num_threads(); 40 | 41 | NCNN_EXPORT int omp_get_thread_num(); 42 | 43 | NCNN_EXPORT int kmp_get_blocktime(); 44 | 45 | NCNN_EXPORT void kmp_set_blocktime(int blocktime); 46 | 47 | #ifdef __cplusplus 48 | } 49 | #endif 50 | 51 | #endif // NCNN_SIMPLEOMP 52 | 53 | #endif // NCNN_SIMPLEOMP_H 54 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/lib/cmake/OGLCompilerTargets-release.cmake: -------------------------------------------------------------------------------- 1 | #---------------------------------------------------------------- 2 | # Generated CMake target import file for configuration "Release". 3 | #---------------------------------------------------------------- 4 | 5 | # Commands may need to know the format version. 6 | set(CMAKE_IMPORT_FILE_VERSION 1) 7 | 8 | # Import target "OGLCompiler" for configuration "Release" 9 | set_property(TARGET OGLCompiler APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 10 | set_target_properties(OGLCompiler PROPERTIES 11 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 12 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libOGLCompiler.a" 13 | ) 14 | 15 | list(APPEND _IMPORT_CHECK_TARGETS OGLCompiler ) 16 | list(APPEND _IMPORT_CHECK_FILES_FOR_OGLCompiler "${_IMPORT_PREFIX}/lib/libOGLCompiler.a" ) 17 | 18 | # Commands beyond this point should not need to know the version. 19 | set(CMAKE_IMPORT_FILE_VERSION) 20 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/lib/cmake/OSDependentTargets-release.cmake: -------------------------------------------------------------------------------- 1 | #---------------------------------------------------------------- 2 | # Generated CMake target import file for configuration "Release". 3 | #---------------------------------------------------------------- 4 | 5 | # Commands may need to know the format version. 6 | set(CMAKE_IMPORT_FILE_VERSION 1) 7 | 8 | # Import target "OSDependent" for configuration "Release" 9 | set_property(TARGET OSDependent APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 10 | set_target_properties(OSDependent PROPERTIES 11 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 12 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libOSDependent.a" 13 | ) 14 | 15 | list(APPEND _IMPORT_CHECK_TARGETS OSDependent ) 16 | list(APPEND _IMPORT_CHECK_FILES_FOR_OSDependent "${_IMPORT_PREFIX}/lib/libOSDependent.a" ) 17 | 18 | # Commands beyond this point should not need to know the version. 19 | set(CMAKE_IMPORT_FILE_VERSION) 20 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/lib/cmake/SPIRVTargets-release.cmake: -------------------------------------------------------------------------------- 1 | #---------------------------------------------------------------- 2 | # Generated CMake target import file for configuration "Release". 3 | #---------------------------------------------------------------- 4 | 5 | # Commands may need to know the format version. 6 | set(CMAKE_IMPORT_FILE_VERSION 1) 7 | 8 | # Import target "SPIRV" for configuration "Release" 9 | set_property(TARGET SPIRV APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 10 | set_target_properties(SPIRV PROPERTIES 11 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 12 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libSPIRV.a" 13 | ) 14 | 15 | list(APPEND _IMPORT_CHECK_TARGETS SPIRV ) 16 | list(APPEND _IMPORT_CHECK_FILES_FOR_SPIRV "${_IMPORT_PREFIX}/lib/libSPIRV.a" ) 17 | 18 | # Commands beyond this point should not need to know the version. 19 | set(CMAKE_IMPORT_FILE_VERSION) 20 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/lib/cmake/glslangTargets-release.cmake: -------------------------------------------------------------------------------- 1 | #---------------------------------------------------------------- 2 | # Generated CMake target import file for configuration "Release". 3 | #---------------------------------------------------------------- 4 | 5 | # Commands may need to know the format version. 6 | set(CMAKE_IMPORT_FILE_VERSION 1) 7 | 8 | # Import target "glslang" for configuration "Release" 9 | set_property(TARGET glslang APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 10 | set_target_properties(glslang PROPERTIES 11 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 12 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libglslang.a" 13 | ) 14 | 15 | list(APPEND _IMPORT_CHECK_TARGETS glslang ) 16 | list(APPEND _IMPORT_CHECK_FILES_FOR_glslang "${_IMPORT_PREFIX}/lib/libglslang.a" ) 17 | 18 | # Import target "MachineIndependent" for configuration "Release" 19 | set_property(TARGET MachineIndependent APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 20 | set_target_properties(MachineIndependent PROPERTIES 21 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 22 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libMachineIndependent.a" 23 | ) 24 | 25 | list(APPEND _IMPORT_CHECK_TARGETS MachineIndependent ) 26 | list(APPEND _IMPORT_CHECK_FILES_FOR_MachineIndependent "${_IMPORT_PREFIX}/lib/libMachineIndependent.a" ) 27 | 28 | # Import target "GenericCodeGen" for configuration "Release" 29 | set_property(TARGET GenericCodeGen APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 30 | set_target_properties(GenericCodeGen PROPERTIES 31 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 32 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libGenericCodeGen.a" 33 | ) 34 | 35 | list(APPEND _IMPORT_CHECK_TARGETS GenericCodeGen ) 36 | list(APPEND _IMPORT_CHECK_FILES_FOR_GenericCodeGen "${_IMPORT_PREFIX}/lib/libGenericCodeGen.a" ) 37 | 38 | # Commands beyond this point should not need to know the version. 39 | set(CMAKE_IMPORT_FILE_VERSION) 40 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/lib/cmake/ncnn/ncnn-release.cmake: -------------------------------------------------------------------------------- 1 | #---------------------------------------------------------------- 2 | # Generated CMake target import file for configuration "Release". 3 | #---------------------------------------------------------------- 4 | 5 | # Commands may need to know the format version. 6 | set(CMAKE_IMPORT_FILE_VERSION 1) 7 | 8 | # Import target "ncnn" for configuration "Release" 9 | set_property(TARGET ncnn APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 10 | set_target_properties(ncnn PROPERTIES 11 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 12 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libncnn.a" 13 | ) 14 | 15 | list(APPEND _IMPORT_CHECK_TARGETS ncnn ) 16 | list(APPEND _IMPORT_CHECK_FILES_FOR_ncnn "${_IMPORT_PREFIX}/lib/libncnn.a" ) 17 | 18 | # Commands beyond this point should not need to know the version. 19 | set(CMAKE_IMPORT_FILE_VERSION) 20 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/lib/cmake/ncnn/ncnnConfig.cmake: -------------------------------------------------------------------------------- 1 | set(NCNN_OPENMP ON) 2 | set(NCNN_THREADS ON) 3 | set(NCNN_VULKAN ON) 4 | set(NCNN_SHARED_LIB OFF) 5 | set(NCNN_SYSTEM_GLSLANG OFF) 6 | 7 | if(NCNN_OPENMP) 8 | find_package(OpenMP) 9 | endif() 10 | 11 | if(NCNN_THREADS) 12 | set(CMAKE_THREAD_PREFER_PTHREAD TRUE) 13 | set(THREADS_PREFER_PTHREAD_FLAG TRUE) 14 | find_package(Threads REQUIRED) 15 | endif() 16 | 17 | if(NCNN_VULKAN) 18 | find_package(Vulkan REQUIRED) 19 | 20 | if(NOT NCNN_SHARED_LIB) 21 | if(NCNN_SYSTEM_GLSLANG) 22 | set(GLSLANG_TARGET_DIR "") 23 | else() 24 | set(GLSLANG_TARGET_DIR "${CMAKE_CURRENT_LIST_DIR}/../../../lib/cmake") 25 | endif(NCNN_SYSTEM_GLSLANG) 26 | 27 | include(${GLSLANG_TARGET_DIR}/OSDependentTargets.cmake) 28 | include(${GLSLANG_TARGET_DIR}/OGLCompilerTargets.cmake) 29 | if(EXISTS "${GLSLANG_TARGET_DIR}/HLSLTargets.cmake") 30 | # hlsl support can be optional 31 | include("${GLSLANG_TARGET_DIR}/HLSLTargets.cmake") 32 | endif() 33 | include(${GLSLANG_TARGET_DIR}/glslangTargets.cmake) 34 | include(${GLSLANG_TARGET_DIR}/SPIRVTargets.cmake) 35 | endif() 36 | endif(NCNN_VULKAN) 37 | 38 | include(${CMAKE_CURRENT_LIST_DIR}/ncnn.cmake) 39 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/lib/libGenericCodeGen.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/x86/lib/libGenericCodeGen.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/lib/libMachineIndependent.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/x86/lib/libMachineIndependent.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/lib/libOGLCompiler.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/x86/lib/libOGLCompiler.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/lib/libOSDependent.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/x86/lib/libOSDependent.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/lib/libSPIRV.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/x86/lib/libSPIRV.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/lib/libglslang.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/x86/lib/libglslang.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/lib/libncnn.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/x86/lib/libncnn.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86/lib/pkgconfig/ncnn.pc: -------------------------------------------------------------------------------- 1 | prefix=${pcfiledir}/../.. 2 | librarydir=${prefix}/lib 3 | includedir=${prefix}/include 4 | 5 | Name: ncnn 6 | Description: high-performance neural network inference framework optimized for the mobile platform 7 | Version: 1.0.20220729 8 | URL: https://github.com/Tencent/ncnn 9 | Libs: -L"${librarydir}" -lncnn 10 | Cflags: -I"${includedir}" 11 | 12 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/include/glslang/Include/InitializeGlobals.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2002-2005 3Dlabs Inc. Ltd. 3 | // All rights reserved. 4 | // 5 | // Redistribution and use in source and binary forms, with or without 6 | // modification, are permitted provided that the following conditions 7 | // are met: 8 | // 9 | // Redistributions of source code must retain the above copyright 10 | // notice, this list of conditions and the following disclaimer. 11 | // 12 | // Redistributions in binary form must reproduce the above 13 | // copyright notice, this list of conditions and the following 14 | // disclaimer in the documentation and/or other materials provided 15 | // with the distribution. 16 | // 17 | // Neither the name of 3Dlabs Inc. Ltd. nor the names of its 18 | // contributors may be used to endorse or promote products derived 19 | // from this software without specific prior written permission. 20 | // 21 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 24 | // FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 25 | // COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 26 | // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 27 | // BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 28 | // LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 29 | // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30 | // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 31 | // ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 32 | // POSSIBILITY OF SUCH DAMAGE. 33 | // 34 | 35 | #ifndef __INITIALIZE_GLOBALS_INCLUDED_ 36 | #define __INITIALIZE_GLOBALS_INCLUDED_ 37 | 38 | namespace glslang { 39 | 40 | bool InitializePoolIndex(); 41 | 42 | } // end namespace glslang 43 | 44 | #endif // __INITIALIZE_GLOBALS_INCLUDED_ 45 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/include/glslang/MachineIndependent/RemoveTree.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2002-2005 3Dlabs Inc. Ltd. 3 | // All rights reserved. 4 | // 5 | // Redistribution and use in source and binary forms, with or without 6 | // modification, are permitted provided that the following conditions 7 | // are met: 8 | // 9 | // Redistributions of source code must retain the above copyright 10 | // notice, this list of conditions and the following disclaimer. 11 | // 12 | // Redistributions in binary form must reproduce the above 13 | // copyright notice, this list of conditions and the following 14 | // disclaimer in the documentation and/or other materials provided 15 | // with the distribution. 16 | // 17 | // Neither the name of 3Dlabs Inc. Ltd. nor the names of its 18 | // contributors may be used to endorse or promote products derived 19 | // from this software without specific prior written permission. 20 | // 21 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 24 | // FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 25 | // COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 26 | // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 27 | // BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 28 | // LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 29 | // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30 | // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 31 | // ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 32 | // POSSIBILITY OF SUCH DAMAGE. 33 | // 34 | 35 | #pragma once 36 | 37 | namespace glslang { 38 | 39 | void RemoveAllTreeNodes(TIntermNode*); 40 | 41 | } // end namespace glslang 42 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/include/glslang/SPIRV/NonSemanticDebugPrintf.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2020 The Khronos Group Inc. 2 | // 3 | // Permission is hereby granted, free of charge, to any person obtaining a 4 | // copy of this software and/or associated documentation files (the 5 | // "Materials"), to deal in the Materials without restriction, including 6 | // without limitation the rights to use, copy, modify, merge, publish, 7 | // distribute, sublicense, and/or sell copies of the Materials, and to 8 | // permit persons to whom the Materials are furnished to do so, subject to 9 | // the following conditions: 10 | // 11 | // The above copyright notice and this permission notice shall be included 12 | // in all copies or substantial portions of the Materials. 13 | // 14 | // MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS 15 | // KHRONOS STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS 16 | // SPECIFICATIONS AND HEADER INFORMATION ARE LOCATED AT 17 | // https://www.khronos.org/registry/ 18 | // 19 | // THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 20 | // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 21 | // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 22 | // IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 23 | // CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 24 | // TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 25 | // MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. 26 | // 27 | 28 | #ifndef SPIRV_UNIFIED1_NonSemanticDebugPrintf_H_ 29 | #define SPIRV_UNIFIED1_NonSemanticDebugPrintf_H_ 30 | 31 | #ifdef __cplusplus 32 | extern "C" { 33 | #endif 34 | 35 | enum { 36 | NonSemanticDebugPrintfRevision = 1, 37 | NonSemanticDebugPrintfRevision_BitWidthPadding = 0x7fffffff 38 | }; 39 | 40 | enum NonSemanticDebugPrintfInstructions { 41 | NonSemanticDebugPrintfDebugPrintf = 1, 42 | NonSemanticDebugPrintfInstructionsMax = 0x7fffffff 43 | }; 44 | 45 | 46 | #ifdef __cplusplus 47 | } 48 | #endif 49 | 50 | #endif // SPIRV_UNIFIED1_NonSemanticDebugPrintf_H_ 51 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/include/glslang/SPIRV/disassemble.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2014-2015 LunarG, Inc. 3 | // 4 | // All rights reserved. 5 | // 6 | // Redistribution and use in source and binary forms, with or without 7 | // modification, are permitted provided that the following conditions 8 | // are met: 9 | // 10 | // Redistributions of source code must retain the above copyright 11 | // notice, this list of conditions and the following disclaimer. 12 | // 13 | // Redistributions in binary form must reproduce the above 14 | // copyright notice, this list of conditions and the following 15 | // disclaimer in the documentation and/or other materials provided 16 | // with the distribution. 17 | // 18 | // Neither the name of 3Dlabs Inc. Ltd. nor the names of its 19 | // contributors may be used to endorse or promote products derived 20 | // from this software without specific prior written permission. 21 | // 22 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 23 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 24 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 25 | // FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 26 | // COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 27 | // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 28 | // BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 29 | // LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 30 | // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 31 | // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 32 | // ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 33 | // POSSIBILITY OF SUCH DAMAGE. 34 | 35 | // 36 | // Disassembler for SPIR-V. 37 | // 38 | 39 | #pragma once 40 | #ifndef disassembler_H 41 | #define disassembler_H 42 | 43 | #include 44 | #include 45 | 46 | namespace spv { 47 | 48 | // disassemble with glslang custom disassembler 49 | void Disassemble(std::ostream& out, const std::vector&); 50 | 51 | } // end namespace spv 52 | 53 | #endif // disassembler_H 54 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/include/ncnn/benchmark.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_BENCHMARK_H 16 | #define NCNN_BENCHMARK_H 17 | 18 | #include "layer.h" 19 | #include "mat.h" 20 | #include "platform.h" 21 | 22 | namespace ncnn { 23 | 24 | // get now timestamp in ms 25 | NCNN_EXPORT double get_current_time(); 26 | 27 | #if NCNN_BENCHMARK 28 | 29 | NCNN_EXPORT void benchmark(const Layer* layer, double start, double end); 30 | NCNN_EXPORT void benchmark(const Layer* layer, const Mat& bottom_blob, Mat& top_blob, double start, double end); 31 | 32 | #endif // NCNN_BENCHMARK 33 | 34 | } // namespace ncnn 35 | 36 | #endif // NCNN_BENCHMARK_H 37 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/include/ncnn/blob.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_BLOB_H 16 | #define NCNN_BLOB_H 17 | 18 | #include "mat.h" 19 | #include "platform.h" 20 | 21 | namespace ncnn { 22 | 23 | class NCNN_EXPORT Blob 24 | { 25 | public: 26 | // empty 27 | Blob(); 28 | 29 | public: 30 | #if NCNN_STRING 31 | // blob name 32 | std::string name; 33 | #endif // NCNN_STRING 34 | // layer index which produce this blob as output 35 | int producer; 36 | // layer index which need this blob as input 37 | int consumer; 38 | // shape hint 39 | Mat shape; 40 | }; 41 | 42 | } // namespace ncnn 43 | 44 | #endif // NCNN_BLOB_H 45 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/include/ncnn/layer_shader_type.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2020 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_LAYER_SHADER_TYPE_H 16 | #define NCNN_LAYER_SHADER_TYPE_H 17 | 18 | namespace ncnn { 19 | 20 | namespace LayerShaderType { 21 | enum LayerShaderType 22 | { 23 | #include "layer_shader_type_enum.h" 24 | }; 25 | } // namespace LayerShaderType 26 | 27 | } // namespace ncnn 28 | 29 | #endif // NCNN_LAYER_SHADER_TYPE_H 30 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/include/ncnn/layer_type.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_LAYER_TYPE_H 16 | #define NCNN_LAYER_TYPE_H 17 | 18 | namespace ncnn { 19 | 20 | namespace LayerType { 21 | enum LayerType 22 | { 23 | #include "layer_type_enum.h" 24 | CustomBit = (1 << 8), 25 | }; 26 | } // namespace LayerType 27 | 28 | } // namespace ncnn 29 | 30 | #endif // NCNN_LAYER_TYPE_H 31 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/include/ncnn/layer_type_enum.h: -------------------------------------------------------------------------------- 1 | // Layer Type Enum header 2 | // 3 | // This file is auto-generated by cmake, don't edit it. 4 | 5 | AbsVal = 0, 6 | ArgMax = 1, 7 | BatchNorm = 2, 8 | Bias = 3, 9 | BNLL = 4, 10 | Concat = 5, 11 | Convolution = 6, 12 | Crop = 7, 13 | Deconvolution = 8, 14 | Dropout = 9, 15 | Eltwise = 10, 16 | ELU = 11, 17 | Embed = 12, 18 | Exp = 13, 19 | Flatten = 14, 20 | InnerProduct = 15, 21 | Input = 16, 22 | Log = 17, 23 | LRN = 18, 24 | MemoryData = 19, 25 | MVN = 20, 26 | Pooling = 21, 27 | Power = 22, 28 | PReLU = 23, 29 | Proposal = 24, 30 | Reduction = 25, 31 | ReLU = 26, 32 | Reshape = 27, 33 | ROIPooling = 28, 34 | Scale = 29, 35 | Sigmoid = 30, 36 | Slice = 31, 37 | Softmax = 32, 38 | Split = 33, 39 | SPP = 34, 40 | TanH = 35, 41 | Threshold = 36, 42 | Tile = 37, 43 | RNN = 38, 44 | LSTM = 39, 45 | BinaryOp = 40, 46 | UnaryOp = 41, 47 | ConvolutionDepthWise = 42, 48 | Padding = 43, 49 | Squeeze = 44, 50 | ExpandDims = 45, 51 | Normalize = 46, 52 | Permute = 47, 53 | PriorBox = 48, 54 | DetectionOutput = 49, 55 | Interp = 50, 56 | DeconvolutionDepthWise = 51, 57 | ShuffleChannel = 52, 58 | InstanceNorm = 53, 59 | Clip = 54, 60 | Reorg = 55, 61 | YoloDetectionOutput = 56, 62 | Quantize = 57, 63 | Dequantize = 58, 64 | Yolov3DetectionOutput = 59, 65 | PSROIPooling = 60, 66 | ROIAlign = 61, 67 | Packing = 62, 68 | Requantize = 63, 69 | Cast = 64, 70 | HardSigmoid = 65, 71 | SELU = 66, 72 | HardSwish = 67, 73 | Noop = 68, 74 | PixelShuffle = 69, 75 | DeepCopy = 70, 76 | Mish = 71, 77 | StatisticsPooling = 72, 78 | Swish = 73, 79 | Gemm = 74, 80 | GroupNorm = 75, 81 | LayerNorm = 76, 82 | Softplus = 77, 83 | GRU = 78, 84 | MultiHeadAttention = 79, 85 | GELU = 80, 86 | Convolution1D = 81, 87 | Pooling1D = 82, 88 | ConvolutionDepthWise1D = 83, 89 | Convolution3D = 84, 90 | ConvolutionDepthWise3D = 85, 91 | Pooling3D = 86, 92 | MatMul = 87, 93 | Deconvolution1D = 88, 94 | DeconvolutionDepthWise1D = 89, 95 | Deconvolution3D = 90, 96 | DeconvolutionDepthWise3D = 91, 97 | Einsum = 92, 98 | DeformableConv2D = 93, 99 | 100 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/include/ncnn/modelbin.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_MODELBIN_H 16 | #define NCNN_MODELBIN_H 17 | 18 | #include "mat.h" 19 | 20 | namespace ncnn { 21 | 22 | class DataReader; 23 | class NCNN_EXPORT ModelBin 24 | { 25 | public: 26 | ModelBin(); 27 | virtual ~ModelBin(); 28 | // element type 29 | // 0 = auto 30 | // 1 = float32 31 | // 2 = float16 32 | // 3 = int8 33 | // load vec 34 | virtual Mat load(int w, int type) const = 0; 35 | // load image 36 | virtual Mat load(int w, int h, int type) const; 37 | // load dim 38 | virtual Mat load(int w, int h, int c, int type) const; 39 | // load cube 40 | virtual Mat load(int w, int h, int d, int c, int type) const; 41 | }; 42 | 43 | class ModelBinFromDataReaderPrivate; 44 | class NCNN_EXPORT ModelBinFromDataReader : public ModelBin 45 | { 46 | public: 47 | explicit ModelBinFromDataReader(const DataReader& dr); 48 | virtual ~ModelBinFromDataReader(); 49 | 50 | virtual Mat load(int w, int type) const; 51 | 52 | private: 53 | ModelBinFromDataReader(const ModelBinFromDataReader&); 54 | ModelBinFromDataReader& operator=(const ModelBinFromDataReader&); 55 | 56 | private: 57 | ModelBinFromDataReaderPrivate* const d; 58 | }; 59 | 60 | class ModelBinFromMatArrayPrivate; 61 | class NCNN_EXPORT ModelBinFromMatArray : public ModelBin 62 | { 63 | public: 64 | // construct from weight blob array 65 | explicit ModelBinFromMatArray(const Mat* weights); 66 | virtual ~ModelBinFromMatArray(); 67 | 68 | virtual Mat load(int w, int type) const; 69 | 70 | private: 71 | ModelBinFromMatArray(const ModelBinFromMatArray&); 72 | ModelBinFromMatArray& operator=(const ModelBinFromMatArray&); 73 | 74 | private: 75 | ModelBinFromMatArrayPrivate* const d; 76 | }; 77 | 78 | } // namespace ncnn 79 | 80 | #endif // NCNN_MODELBIN_H 81 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/include/ncnn/ncnn_export.h: -------------------------------------------------------------------------------- 1 | 2 | #ifndef NCNN_EXPORT_H 3 | #define NCNN_EXPORT_H 4 | 5 | #ifdef NCNN_STATIC_DEFINE 6 | # define NCNN_EXPORT 7 | # define NCNN_NO_EXPORT 8 | #else 9 | # ifndef NCNN_EXPORT 10 | # ifdef ncnn_EXPORTS 11 | /* We are building this library */ 12 | # define NCNN_EXPORT 13 | # else 14 | /* We are using this library */ 15 | # define NCNN_EXPORT 16 | # endif 17 | # endif 18 | 19 | # ifndef NCNN_NO_EXPORT 20 | # define NCNN_NO_EXPORT 21 | # endif 22 | #endif 23 | 24 | #ifndef NCNN_DEPRECATED 25 | # define NCNN_DEPRECATED __attribute__ ((__deprecated__)) 26 | #endif 27 | 28 | #ifndef NCNN_DEPRECATED_EXPORT 29 | # define NCNN_DEPRECATED_EXPORT NCNN_EXPORT NCNN_DEPRECATED 30 | #endif 31 | 32 | #ifndef NCNN_DEPRECATED_NO_EXPORT 33 | # define NCNN_DEPRECATED_NO_EXPORT NCNN_NO_EXPORT NCNN_DEPRECATED 34 | #endif 35 | 36 | #if 0 /* DEFINE_NO_DEPRECATED */ 37 | # ifndef NCNN_NO_DEPRECATED 38 | # define NCNN_NO_DEPRECATED 39 | # endif 40 | #endif 41 | 42 | #endif /* NCNN_EXPORT_H */ 43 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/include/ncnn/paramdict.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_PARAMDICT_H 16 | #define NCNN_PARAMDICT_H 17 | 18 | #include "mat.h" 19 | 20 | // at most 32 parameters 21 | #define NCNN_MAX_PARAM_COUNT 32 22 | 23 | namespace ncnn { 24 | 25 | class DataReader; 26 | class Net; 27 | class ParamDictPrivate; 28 | class NCNN_EXPORT ParamDict 29 | { 30 | public: 31 | // empty 32 | ParamDict(); 33 | 34 | virtual ~ParamDict(); 35 | 36 | // copy 37 | ParamDict(const ParamDict&); 38 | 39 | // assign 40 | ParamDict& operator=(const ParamDict&); 41 | 42 | // get type 43 | int type(int id) const; 44 | 45 | // get int 46 | int get(int id, int def) const; 47 | // get float 48 | float get(int id, float def) const; 49 | // get array 50 | Mat get(int id, const Mat& def) const; 51 | 52 | // set int 53 | void set(int id, int i); 54 | // set float 55 | void set(int id, float f); 56 | // set array 57 | void set(int id, const Mat& v); 58 | 59 | protected: 60 | friend class Net; 61 | 62 | void clear(); 63 | 64 | int load_param(const DataReader& dr); 65 | int load_param_bin(const DataReader& dr); 66 | 67 | private: 68 | ParamDictPrivate* const d; 69 | }; 70 | 71 | } // namespace ncnn 72 | 73 | #endif // NCNN_PARAMDICT_H 74 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/include/ncnn/simpleomp.h: -------------------------------------------------------------------------------- 1 | // Tencent is pleased to support the open source community by making ncnn available. 2 | // 3 | // Copyright (C) 2020 THL A29 Limited, a Tencent company. All rights reserved. 4 | // 5 | // Licensed under the BSD 3-Clause License (the "License"); you may not use this file except 6 | // in compliance with the License. You may obtain a copy of the License at 7 | // 8 | // https://opensource.org/licenses/BSD-3-Clause 9 | // 10 | // Unless required by applicable law or agreed to in writing, software distributed 11 | // under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 12 | // CONDITIONS OF ANY KIND, either express or implied. See the License for the 13 | // specific language governing permissions and limitations under the License. 14 | 15 | #ifndef NCNN_SIMPLEOMP_H 16 | #define NCNN_SIMPLEOMP_H 17 | 18 | #include "platform.h" 19 | 20 | #if NCNN_SIMPLEOMP 21 | 22 | #include 23 | 24 | // This minimal openmp runtime implementation only supports the llvm openmp abi 25 | // and only supports #pragma omp parallel for num_threads(X) 26 | 27 | #ifdef __cplusplus 28 | extern "C" { 29 | #endif 30 | 31 | NCNN_EXPORT int omp_get_max_threads(); 32 | 33 | NCNN_EXPORT void omp_set_num_threads(int num_threads); 34 | 35 | NCNN_EXPORT int omp_get_dynamic(); 36 | 37 | NCNN_EXPORT void omp_set_dynamic(int dynamic); 38 | 39 | NCNN_EXPORT int omp_get_num_threads(); 40 | 41 | NCNN_EXPORT int omp_get_thread_num(); 42 | 43 | NCNN_EXPORT int kmp_get_blocktime(); 44 | 45 | NCNN_EXPORT void kmp_set_blocktime(int blocktime); 46 | 47 | #ifdef __cplusplus 48 | } 49 | #endif 50 | 51 | #endif // NCNN_SIMPLEOMP 52 | 53 | #endif // NCNN_SIMPLEOMP_H 54 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/lib/cmake/OGLCompilerTargets-release.cmake: -------------------------------------------------------------------------------- 1 | #---------------------------------------------------------------- 2 | # Generated CMake target import file for configuration "Release". 3 | #---------------------------------------------------------------- 4 | 5 | # Commands may need to know the format version. 6 | set(CMAKE_IMPORT_FILE_VERSION 1) 7 | 8 | # Import target "OGLCompiler" for configuration "Release" 9 | set_property(TARGET OGLCompiler APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 10 | set_target_properties(OGLCompiler PROPERTIES 11 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 12 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libOGLCompiler.a" 13 | ) 14 | 15 | list(APPEND _IMPORT_CHECK_TARGETS OGLCompiler ) 16 | list(APPEND _IMPORT_CHECK_FILES_FOR_OGLCompiler "${_IMPORT_PREFIX}/lib/libOGLCompiler.a" ) 17 | 18 | # Commands beyond this point should not need to know the version. 19 | set(CMAKE_IMPORT_FILE_VERSION) 20 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/lib/cmake/OSDependentTargets-release.cmake: -------------------------------------------------------------------------------- 1 | #---------------------------------------------------------------- 2 | # Generated CMake target import file for configuration "Release". 3 | #---------------------------------------------------------------- 4 | 5 | # Commands may need to know the format version. 6 | set(CMAKE_IMPORT_FILE_VERSION 1) 7 | 8 | # Import target "OSDependent" for configuration "Release" 9 | set_property(TARGET OSDependent APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 10 | set_target_properties(OSDependent PROPERTIES 11 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 12 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libOSDependent.a" 13 | ) 14 | 15 | list(APPEND _IMPORT_CHECK_TARGETS OSDependent ) 16 | list(APPEND _IMPORT_CHECK_FILES_FOR_OSDependent "${_IMPORT_PREFIX}/lib/libOSDependent.a" ) 17 | 18 | # Commands beyond this point should not need to know the version. 19 | set(CMAKE_IMPORT_FILE_VERSION) 20 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/lib/cmake/SPIRVTargets-release.cmake: -------------------------------------------------------------------------------- 1 | #---------------------------------------------------------------- 2 | # Generated CMake target import file for configuration "Release". 3 | #---------------------------------------------------------------- 4 | 5 | # Commands may need to know the format version. 6 | set(CMAKE_IMPORT_FILE_VERSION 1) 7 | 8 | # Import target "SPIRV" for configuration "Release" 9 | set_property(TARGET SPIRV APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 10 | set_target_properties(SPIRV PROPERTIES 11 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 12 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libSPIRV.a" 13 | ) 14 | 15 | list(APPEND _IMPORT_CHECK_TARGETS SPIRV ) 16 | list(APPEND _IMPORT_CHECK_FILES_FOR_SPIRV "${_IMPORT_PREFIX}/lib/libSPIRV.a" ) 17 | 18 | # Commands beyond this point should not need to know the version. 19 | set(CMAKE_IMPORT_FILE_VERSION) 20 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/lib/cmake/glslangTargets-release.cmake: -------------------------------------------------------------------------------- 1 | #---------------------------------------------------------------- 2 | # Generated CMake target import file for configuration "Release". 3 | #---------------------------------------------------------------- 4 | 5 | # Commands may need to know the format version. 6 | set(CMAKE_IMPORT_FILE_VERSION 1) 7 | 8 | # Import target "glslang" for configuration "Release" 9 | set_property(TARGET glslang APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 10 | set_target_properties(glslang PROPERTIES 11 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 12 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libglslang.a" 13 | ) 14 | 15 | list(APPEND _IMPORT_CHECK_TARGETS glslang ) 16 | list(APPEND _IMPORT_CHECK_FILES_FOR_glslang "${_IMPORT_PREFIX}/lib/libglslang.a" ) 17 | 18 | # Import target "MachineIndependent" for configuration "Release" 19 | set_property(TARGET MachineIndependent APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 20 | set_target_properties(MachineIndependent PROPERTIES 21 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 22 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libMachineIndependent.a" 23 | ) 24 | 25 | list(APPEND _IMPORT_CHECK_TARGETS MachineIndependent ) 26 | list(APPEND _IMPORT_CHECK_FILES_FOR_MachineIndependent "${_IMPORT_PREFIX}/lib/libMachineIndependent.a" ) 27 | 28 | # Import target "GenericCodeGen" for configuration "Release" 29 | set_property(TARGET GenericCodeGen APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 30 | set_target_properties(GenericCodeGen PROPERTIES 31 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 32 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libGenericCodeGen.a" 33 | ) 34 | 35 | list(APPEND _IMPORT_CHECK_TARGETS GenericCodeGen ) 36 | list(APPEND _IMPORT_CHECK_FILES_FOR_GenericCodeGen "${_IMPORT_PREFIX}/lib/libGenericCodeGen.a" ) 37 | 38 | # Commands beyond this point should not need to know the version. 39 | set(CMAKE_IMPORT_FILE_VERSION) 40 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/lib/cmake/ncnn/ncnn-release.cmake: -------------------------------------------------------------------------------- 1 | #---------------------------------------------------------------- 2 | # Generated CMake target import file for configuration "Release". 3 | #---------------------------------------------------------------- 4 | 5 | # Commands may need to know the format version. 6 | set(CMAKE_IMPORT_FILE_VERSION 1) 7 | 8 | # Import target "ncnn" for configuration "Release" 9 | set_property(TARGET ncnn APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) 10 | set_target_properties(ncnn PROPERTIES 11 | IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX" 12 | IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libncnn.a" 13 | ) 14 | 15 | list(APPEND _IMPORT_CHECK_TARGETS ncnn ) 16 | list(APPEND _IMPORT_CHECK_FILES_FOR_ncnn "${_IMPORT_PREFIX}/lib/libncnn.a" ) 17 | 18 | # Commands beyond this point should not need to know the version. 19 | set(CMAKE_IMPORT_FILE_VERSION) 20 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/lib/cmake/ncnn/ncnnConfig.cmake: -------------------------------------------------------------------------------- 1 | set(NCNN_OPENMP ON) 2 | set(NCNN_THREADS ON) 3 | set(NCNN_VULKAN ON) 4 | set(NCNN_SHARED_LIB OFF) 5 | set(NCNN_SYSTEM_GLSLANG OFF) 6 | 7 | if(NCNN_OPENMP) 8 | find_package(OpenMP) 9 | endif() 10 | 11 | if(NCNN_THREADS) 12 | set(CMAKE_THREAD_PREFER_PTHREAD TRUE) 13 | set(THREADS_PREFER_PTHREAD_FLAG TRUE) 14 | find_package(Threads REQUIRED) 15 | endif() 16 | 17 | if(NCNN_VULKAN) 18 | find_package(Vulkan REQUIRED) 19 | 20 | if(NOT NCNN_SHARED_LIB) 21 | if(NCNN_SYSTEM_GLSLANG) 22 | set(GLSLANG_TARGET_DIR "") 23 | else() 24 | set(GLSLANG_TARGET_DIR "${CMAKE_CURRENT_LIST_DIR}/../../../lib/cmake") 25 | endif(NCNN_SYSTEM_GLSLANG) 26 | 27 | include(${GLSLANG_TARGET_DIR}/OSDependentTargets.cmake) 28 | include(${GLSLANG_TARGET_DIR}/OGLCompilerTargets.cmake) 29 | if(EXISTS "${GLSLANG_TARGET_DIR}/HLSLTargets.cmake") 30 | # hlsl support can be optional 31 | include("${GLSLANG_TARGET_DIR}/HLSLTargets.cmake") 32 | endif() 33 | include(${GLSLANG_TARGET_DIR}/glslangTargets.cmake) 34 | include(${GLSLANG_TARGET_DIR}/SPIRVTargets.cmake) 35 | endif() 36 | endif(NCNN_VULKAN) 37 | 38 | include(${CMAKE_CURRENT_LIST_DIR}/ncnn.cmake) 39 | -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/lib/libGenericCodeGen.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/lib/libGenericCodeGen.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/lib/libMachineIndependent.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/lib/libMachineIndependent.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/lib/libOGLCompiler.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/lib/libOGLCompiler.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/lib/libOSDependent.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/lib/libOSDependent.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/lib/libSPIRV.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/lib/libSPIRV.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/lib/libglslang.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/lib/libglslang.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/lib/libncnn.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/lib/libncnn.a -------------------------------------------------------------------------------- /app/src/main/jni/ncnn-20220701-android-vulkan/x86_64/lib/pkgconfig/ncnn.pc: -------------------------------------------------------------------------------- 1 | prefix=${pcfiledir}/../.. 2 | librarydir=${prefix}/lib 3 | includedir=${prefix}/include 4 | 5 | Name: ncnn 6 | Description: high-performance neural network inference framework optimized for the mobile platform 7 | Version: 1.0.20220729 8 | URL: https://github.com/Tencent/ncnn 9 | Libs: -L"${librarydir}" -lncnn 10 | Cflags: -I"${includedir}" 11 | 12 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/README.android: -------------------------------------------------------------------------------- 1 | See http://opencv.org/platforms/android 2 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/OpenCVConfig-version.cmake: -------------------------------------------------------------------------------- 1 | set(OpenCV_VERSION 4.5.3) 2 | set(PACKAGE_VERSION ${OpenCV_VERSION}) 3 | 4 | set(PACKAGE_VERSION_EXACT False) 5 | set(PACKAGE_VERSION_COMPATIBLE False) 6 | 7 | if(PACKAGE_FIND_VERSION VERSION_EQUAL PACKAGE_VERSION) 8 | set(PACKAGE_VERSION_EXACT True) 9 | set(PACKAGE_VERSION_COMPATIBLE True) 10 | endif() 11 | 12 | if(PACKAGE_FIND_VERSION_MAJOR EQUAL 4 13 | AND PACKAGE_FIND_VERSION VERSION_LESS PACKAGE_VERSION) 14 | set(PACKAGE_VERSION_COMPATIBLE True) 15 | endif() 16 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/OpenCVConfig.cmake: -------------------------------------------------------------------------------- 1 | # =================================================================================== 2 | # The OpenCV CMake configuration file 3 | # 4 | # ** File generated automatically, do not modify ** 5 | # 6 | # Usage from an external project: 7 | # In your CMakeLists.txt, add these lines: 8 | # 9 | # find_package(OpenCV REQUIRED) 10 | # include_directories(${OpenCV_INCLUDE_DIRS}) # Not needed for CMake >= 2.8.11 11 | # target_link_libraries(MY_TARGET_NAME ${OpenCV_LIBS}) 12 | # 13 | # Or you can search for specific OpenCV modules: 14 | # 15 | # find_package(OpenCV REQUIRED core videoio) 16 | # 17 | # If the module is found then OPENCV__FOUND is set to TRUE. 18 | # 19 | # This file will define the following variables: 20 | # - OpenCV_LIBS : The list of all imported targets for OpenCV modules. 21 | # - OpenCV_INCLUDE_DIRS : The OpenCV include directories. 22 | # - OpenCV_ANDROID_NATIVE_API_LEVEL : Minimum required level of Android API. 23 | # - OpenCV_VERSION : The version of this OpenCV build: "4.5.3" 24 | # - OpenCV_VERSION_MAJOR : Major version part of OpenCV_VERSION: "4" 25 | # - OpenCV_VERSION_MINOR : Minor version part of OpenCV_VERSION: "5" 26 | # - OpenCV_VERSION_PATCH : Patch version part of OpenCV_VERSION: "3" 27 | # - OpenCV_VERSION_STATUS : Development status of this build: "" 28 | # 29 | # =================================================================================== 30 | 31 | # Extract directory name from full path of the file currently being processed. 32 | # Note that CMake 2.8.3 introduced CMAKE_CURRENT_LIST_DIR. We reimplement it 33 | # for older versions of CMake to support these as well. 34 | if(CMAKE_VERSION VERSION_LESS "2.8.3") 35 | get_filename_component(CMAKE_CURRENT_LIST_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH) 36 | endif() 37 | 38 | if(NOT DEFINED OpenCV_CONFIG_SUBDIR) 39 | set(OpenCV_CONFIG_SUBDIR "/abi-${ANDROID_NDK_ABI_NAME}") 40 | endif() 41 | 42 | set(OpenCV_CONFIG_PATH "${CMAKE_CURRENT_LIST_DIR}${OpenCV_CONFIG_SUBDIR}") 43 | if(EXISTS "${OpenCV_CONFIG_PATH}/OpenCVConfig.cmake") 44 | include("${OpenCV_CONFIG_PATH}/OpenCVConfig.cmake") 45 | else() 46 | if(NOT OpenCV_FIND_QUIETLY) 47 | message(WARNING "Found OpenCV Android Pack but it has no binaries compatible with your ABI (can't find: ${OpenCV_CONFIG_SUBDIR})") 48 | endif() 49 | set(OpenCV_FOUND FALSE) 50 | endif() 51 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/abi-arm64-v8a/OpenCVConfig-version.cmake: -------------------------------------------------------------------------------- 1 | set(OpenCV_VERSION 4.5.3) 2 | set(PACKAGE_VERSION ${OpenCV_VERSION}) 3 | 4 | set(PACKAGE_VERSION_EXACT False) 5 | set(PACKAGE_VERSION_COMPATIBLE False) 6 | 7 | if(PACKAGE_FIND_VERSION VERSION_EQUAL PACKAGE_VERSION) 8 | set(PACKAGE_VERSION_EXACT True) 9 | set(PACKAGE_VERSION_COMPATIBLE True) 10 | endif() 11 | 12 | if(PACKAGE_FIND_VERSION_MAJOR EQUAL 4 13 | AND PACKAGE_FIND_VERSION VERSION_LESS PACKAGE_VERSION) 14 | set(PACKAGE_VERSION_COMPATIBLE True) 15 | endif() 16 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/abi-armeabi-v7a/OpenCVConfig-version.cmake: -------------------------------------------------------------------------------- 1 | set(OpenCV_VERSION 4.5.3) 2 | set(PACKAGE_VERSION ${OpenCV_VERSION}) 3 | 4 | set(PACKAGE_VERSION_EXACT False) 5 | set(PACKAGE_VERSION_COMPATIBLE False) 6 | 7 | if(PACKAGE_FIND_VERSION VERSION_EQUAL PACKAGE_VERSION) 8 | set(PACKAGE_VERSION_EXACT True) 9 | set(PACKAGE_VERSION_COMPATIBLE True) 10 | endif() 11 | 12 | if(PACKAGE_FIND_VERSION_MAJOR EQUAL 4 13 | AND PACKAGE_FIND_VERSION VERSION_LESS PACKAGE_VERSION) 14 | set(PACKAGE_VERSION_COMPATIBLE True) 15 | endif() 16 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/abi-x86/OpenCVConfig-version.cmake: -------------------------------------------------------------------------------- 1 | set(OpenCV_VERSION 4.5.3) 2 | set(PACKAGE_VERSION ${OpenCV_VERSION}) 3 | 4 | set(PACKAGE_VERSION_EXACT False) 5 | set(PACKAGE_VERSION_COMPATIBLE False) 6 | 7 | if(PACKAGE_FIND_VERSION VERSION_EQUAL PACKAGE_VERSION) 8 | set(PACKAGE_VERSION_EXACT True) 9 | set(PACKAGE_VERSION_COMPATIBLE True) 10 | endif() 11 | 12 | if(PACKAGE_FIND_VERSION_MAJOR EQUAL 4 13 | AND PACKAGE_FIND_VERSION VERSION_LESS PACKAGE_VERSION) 14 | set(PACKAGE_VERSION_COMPATIBLE True) 15 | endif() 16 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/abi-x86_64/OpenCVConfig-version.cmake: -------------------------------------------------------------------------------- 1 | set(OpenCV_VERSION 4.5.3) 2 | set(PACKAGE_VERSION ${OpenCV_VERSION}) 3 | 4 | set(PACKAGE_VERSION_EXACT False) 5 | set(PACKAGE_VERSION_COMPATIBLE False) 6 | 7 | if(PACKAGE_FIND_VERSION VERSION_EQUAL PACKAGE_VERSION) 8 | set(PACKAGE_VERSION_EXACT True) 9 | set(PACKAGE_VERSION_COMPATIBLE True) 10 | endif() 11 | 12 | if(PACKAGE_FIND_VERSION_MAJOR EQUAL 4 13 | AND PACKAGE_FIND_VERSION VERSION_LESS PACKAGE_VERSION) 14 | set(PACKAGE_VERSION_COMPATIBLE True) 15 | endif() 16 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/core/bufferpool.hpp: -------------------------------------------------------------------------------- 1 | // This file is part of OpenCV project. 2 | // It is subject to the license terms in the LICENSE file found in the top-level directory 3 | // of this distribution and at http://opencv.org/license.html. 4 | // 5 | // Copyright (C) 2014, Advanced Micro Devices, Inc., all rights reserved. 6 | 7 | #ifndef OPENCV_CORE_BUFFER_POOL_HPP 8 | #define OPENCV_CORE_BUFFER_POOL_HPP 9 | 10 | #ifdef _MSC_VER 11 | #pragma warning(push) 12 | #pragma warning(disable: 4265) 13 | #endif 14 | 15 | namespace cv 16 | { 17 | 18 | //! @addtogroup core 19 | //! @{ 20 | 21 | class BufferPoolController 22 | { 23 | protected: 24 | ~BufferPoolController() { } 25 | public: 26 | virtual size_t getReservedSize() const = 0; 27 | virtual size_t getMaxReservedSize() const = 0; 28 | virtual void setMaxReservedSize(size_t size) = 0; 29 | virtual void freeAllReservedBuffers() = 0; 30 | }; 31 | 32 | //! @} 33 | 34 | } 35 | 36 | #ifdef _MSC_VER 37 | #pragma warning(pop) 38 | #endif 39 | 40 | #endif // OPENCV_CORE_BUFFER_POOL_HPP 41 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/core/core.hpp: -------------------------------------------------------------------------------- 1 | /*M/////////////////////////////////////////////////////////////////////////////////////// 2 | // 3 | // IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING. 4 | // 5 | // By downloading, copying, installing or using the software you agree to this license. 6 | // If you do not agree to this license, do not download, install, 7 | // copy or use the software. 8 | // 9 | // 10 | // License Agreement 11 | // For Open Source Computer Vision Library 12 | // 13 | // Copyright (C) 2000-2008, Intel Corporation, all rights reserved. 14 | // Copyright (C) 2009, Willow Garage Inc., all rights reserved. 15 | // Copyright (C) 2013, OpenCV Foundation, all rights reserved. 16 | // Third party copyrights are property of their respective owners. 17 | // 18 | // Redistribution and use in source and binary forms, with or without modification, 19 | // are permitted provided that the following conditions are met: 20 | // 21 | // * Redistribution's of source code must retain the above copyright notice, 22 | // this list of conditions and the following disclaimer. 23 | // 24 | // * Redistribution's in binary form must reproduce the above copyright notice, 25 | // this list of conditions and the following disclaimer in the documentation 26 | // and/or other materials provided with the distribution. 27 | // 28 | // * The name of the copyright holders may not be used to endorse or promote products 29 | // derived from this software without specific prior written permission. 30 | // 31 | // This software is provided by the copyright holders and contributors "as is" and 32 | // any express or implied warranties, including, but not limited to, the implied 33 | // warranties of merchantability and fitness for a particular purpose are disclaimed. 34 | // In no event shall the Intel Corporation or contributors be liable for any direct, 35 | // indirect, incidental, special, exemplary, or consequential damages 36 | // (including, but not limited to, procurement of substitute goods or services; 37 | // loss of use, data, or profits; or business interruption) however caused 38 | // and on any theory of liability, whether in contract, strict liability, 39 | // or tort (including negligence or otherwise) arising in any way out of 40 | // the use of this software, even if advised of the possibility of such damage. 41 | // 42 | //M*/ 43 | 44 | #ifdef __OPENCV_BUILD 45 | #error this is a compatibility header which should not be used inside the OpenCV library 46 | #endif 47 | 48 | #include "opencv2/core.hpp" 49 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/core/detail/async_promise.hpp: -------------------------------------------------------------------------------- 1 | // This file is part of OpenCV project. 2 | // It is subject to the license terms in the LICENSE file found in the top-level directory 3 | // of this distribution and at http://opencv.org/license.html. 4 | 5 | #ifndef OPENCV_CORE_ASYNC_PROMISE_HPP 6 | #define OPENCV_CORE_ASYNC_PROMISE_HPP 7 | 8 | #include "../async.hpp" 9 | 10 | #include "exception_ptr.hpp" 11 | 12 | namespace cv { 13 | 14 | /** @addtogroup core_async 15 | @{ 16 | */ 17 | 18 | 19 | /** @brief Provides result of asynchronous operations 20 | 21 | */ 22 | class CV_EXPORTS AsyncPromise 23 | { 24 | public: 25 | ~AsyncPromise() CV_NOEXCEPT; 26 | AsyncPromise() CV_NOEXCEPT; 27 | explicit AsyncPromise(const AsyncPromise& o) CV_NOEXCEPT; 28 | AsyncPromise& operator=(const AsyncPromise& o) CV_NOEXCEPT; 29 | void release() CV_NOEXCEPT; 30 | 31 | /** Returns associated AsyncArray 32 | @note Can be called once 33 | */ 34 | AsyncArray getArrayResult(); 35 | 36 | /** Stores asynchronous result. 37 | @param[in] value result 38 | */ 39 | void setValue(InputArray value); 40 | 41 | // TODO "move" setters 42 | 43 | #if CV__EXCEPTION_PTR 44 | /** Stores exception. 45 | @param[in] exception exception to be raised in AsyncArray 46 | */ 47 | void setException(std::exception_ptr exception); 48 | #endif 49 | 50 | /** Stores exception. 51 | @param[in] exception exception to be raised in AsyncArray 52 | */ 53 | void setException(const cv::Exception& exception); 54 | 55 | #ifdef CV_CXX11 56 | explicit AsyncPromise(AsyncPromise&& o) { p = o.p; o.p = NULL; } 57 | AsyncPromise& operator=(AsyncPromise&& o) CV_NOEXCEPT { std::swap(p, o.p); return *this; } 58 | #endif 59 | 60 | 61 | // PImpl 62 | typedef struct AsyncArray::Impl Impl; friend struct AsyncArray::Impl; 63 | inline void* _getImpl() const CV_NOEXCEPT { return p; } 64 | protected: 65 | Impl* p; 66 | }; 67 | 68 | 69 | //! @} 70 | } // namespace 71 | #endif // OPENCV_CORE_ASYNC_PROMISE_HPP 72 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/core/detail/exception_ptr.hpp: -------------------------------------------------------------------------------- 1 | // This file is part of OpenCV project. 2 | // It is subject to the license terms in the LICENSE file found in the top-level directory 3 | // of this distribution and at http://opencv.org/license.html. 4 | 5 | #ifndef OPENCV_CORE_DETAILS_EXCEPTION_PTR_H 6 | #define OPENCV_CORE_DETAILS_EXCEPTION_PTR_H 7 | 8 | #ifndef CV__EXCEPTION_PTR 9 | # if defined(__ANDROID__) && defined(ATOMIC_INT_LOCK_FREE) && ATOMIC_INT_LOCK_FREE < 2 10 | # define CV__EXCEPTION_PTR 0 // Not supported, details: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58938 11 | # elif defined(CV_CXX11) 12 | # define CV__EXCEPTION_PTR 1 13 | # elif defined(_MSC_VER) 14 | # define CV__EXCEPTION_PTR (_MSC_VER >= 1600) 15 | # elif defined(__clang__) 16 | # define CV__EXCEPTION_PTR 0 // C++11 only (see above) 17 | # elif defined(__GNUC__) && defined(__GXX_EXPERIMENTAL_CXX0X__) 18 | # define CV__EXCEPTION_PTR (__GXX_EXPERIMENTAL_CXX0X__ > 0) 19 | # endif 20 | #endif 21 | #ifndef CV__EXCEPTION_PTR 22 | # define CV__EXCEPTION_PTR 0 23 | #elif CV__EXCEPTION_PTR 24 | # include // std::exception_ptr 25 | #endif 26 | 27 | #endif // OPENCV_CORE_DETAILS_EXCEPTION_PTR_H 28 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/core/opencl/runtime/opencl_core_wrappers.hpp: -------------------------------------------------------------------------------- 1 | /*M/////////////////////////////////////////////////////////////////////////////////////// 2 | // 3 | // IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING. 4 | // 5 | // By downloading, copying, installing or using the software you agree to this license. 6 | // If you do not agree to this license, do not download, install, 7 | // copy or use the software. 8 | // 9 | // 10 | // License Agreement 11 | // For Open Source Computer Vision Library 12 | // 13 | // Copyright (C) 2010-2013, Advanced Micro Devices, Inc., all rights reserved. 14 | // Third party copyrights are property of their respective owners. 15 | // 16 | // Redistribution and use in source and binary forms, with or without modification, 17 | // are permitted provided that the following conditions are met: 18 | // 19 | // * Redistribution's of source code must retain the above copyright notice, 20 | // this list of conditions and the following disclaimer. 21 | // 22 | // * Redistribution's in binary form must reproduce the above copyright notice, 23 | // this list of conditions and the following disclaimer in the documentation 24 | // and/or other materials provided with the distribution. 25 | // 26 | // * The name of the copyright holders may not be used to endorse or promote products 27 | // derived from this software without specific prior written permission. 28 | // 29 | // This software is provided by the copyright holders and contributors "as is" and 30 | // any express or implied warranties, including, but not limited to, the implied 31 | // warranties of merchantability and fitness for a particular purpose are disclaimed. 32 | // In no event shall the OpenCV Foundation or contributors be liable for any direct, 33 | // indirect, incidental, special, exemplary, or consequential damages 34 | // (including, but not limited to, procurement of substitute goods or services; 35 | // loss of use, data, or profits; or business interruption) however caused 36 | // and on any theory of liability, whether in contract, strict liability, 37 | // or tort (including negligence or otherwise) arising in any way out of 38 | // the use of this software, even if advised of the possibility of such damage. 39 | // 40 | //M*/ 41 | 42 | #ifndef OPENCV_CORE_OCL_RUNTIME_OPENCL_WRAPPERS_HPP 43 | #define OPENCV_CORE_OCL_RUNTIME_OPENCL_WRAPPERS_HPP 44 | 45 | #include "autogenerated/opencl_core_wrappers.hpp" 46 | 47 | #endif // OPENCV_CORE_OCL_RUNTIME_OPENCL_WRAPPERS_HPP 48 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/core/opencl/runtime/opencl_gl_wrappers.hpp: -------------------------------------------------------------------------------- 1 | /*M/////////////////////////////////////////////////////////////////////////////////////// 2 | // 3 | // IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING. 4 | // 5 | // By downloading, copying, installing or using the software you agree to this license. 6 | // If you do not agree to this license, do not download, install, 7 | // copy or use the software. 8 | // 9 | // 10 | // License Agreement 11 | // For Open Source Computer Vision Library 12 | // 13 | // Copyright (C) 2010-2013, Advanced Micro Devices, Inc., all rights reserved. 14 | // Third party copyrights are property of their respective owners. 15 | // 16 | // Redistribution and use in source and binary forms, with or without modification, 17 | // are permitted provided that the following conditions are met: 18 | // 19 | // * Redistribution's of source code must retain the above copyright notice, 20 | // this list of conditions and the following disclaimer. 21 | // 22 | // * Redistribution's in binary form must reproduce the above copyright notice, 23 | // this list of conditions and the following disclaimer in the documentation 24 | // and/or other materials provided with the distribution. 25 | // 26 | // * The name of the copyright holders may not be used to endorse or promote products 27 | // derived from this software without specific prior written permission. 28 | // 29 | // This software is provided by the copyright holders and contributors "as is" and 30 | // any express or implied warranties, including, but not limited to, the implied 31 | // warranties of merchantability and fitness for a particular purpose are disclaimed. 32 | // In no event shall the OpenCV Foundation or contributors be liable for any direct, 33 | // indirect, incidental, special, exemplary, or consequential damages 34 | // (including, but not limited to, procurement of substitute goods or services; 35 | // loss of use, data, or profits; or business interruption) however caused 36 | // and on any theory of liability, whether in contract, strict liability, 37 | // or tort (including negligence or otherwise) arising in any way out of 38 | // the use of this software, even if advised of the possibility of such damage. 39 | // 40 | //M*/ 41 | 42 | #ifndef OPENCV_CORE_OCL_RUNTIME_OPENCL_GL_WRAPPERS_HPP 43 | #define OPENCV_CORE_OCL_RUNTIME_OPENCL_GL_WRAPPERS_HPP 44 | 45 | #include "autogenerated/opencl_gl_wrappers.hpp" 46 | 47 | #endif // OPENCV_CORE_OCL_RUNTIME_OPENCL_GL_WRAPPERS_HPP 48 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/core/opencl/runtime/opencl_svm_definitions.hpp: -------------------------------------------------------------------------------- 1 | /* See LICENSE file in the root OpenCV directory */ 2 | 3 | #ifndef OPENCV_CORE_OCL_RUNTIME_OPENCL_SVM_DEFINITIONS_HPP 4 | #define OPENCV_CORE_OCL_RUNTIME_OPENCL_SVM_DEFINITIONS_HPP 5 | 6 | #if defined(HAVE_OPENCL_SVM) 7 | #if defined(CL_VERSION_2_0) 8 | 9 | // OpenCL 2.0 contains SVM definitions 10 | 11 | #else 12 | 13 | typedef cl_bitfield cl_device_svm_capabilities; 14 | typedef cl_bitfield cl_svm_mem_flags; 15 | typedef cl_uint cl_kernel_exec_info; 16 | 17 | // 18 | // TODO Add real values after OpenCL 2.0 release 19 | // 20 | 21 | #ifndef CL_DEVICE_SVM_CAPABILITIES 22 | #define CL_DEVICE_SVM_CAPABILITIES 0x1053 23 | 24 | #define CL_DEVICE_SVM_COARSE_GRAIN_BUFFER (1 << 0) 25 | #define CL_DEVICE_SVM_FINE_GRAIN_BUFFER (1 << 1) 26 | #define CL_DEVICE_SVM_FINE_GRAIN_SYSTEM (1 << 2) 27 | #define CL_DEVICE_SVM_ATOMICS (1 << 3) 28 | #endif 29 | 30 | #ifndef CL_MEM_SVM_FINE_GRAIN_BUFFER 31 | #define CL_MEM_SVM_FINE_GRAIN_BUFFER (1 << 10) 32 | #endif 33 | 34 | #ifndef CL_MEM_SVM_ATOMICS 35 | #define CL_MEM_SVM_ATOMICS (1 << 11) 36 | #endif 37 | 38 | 39 | #endif // CL_VERSION_2_0 40 | #endif // HAVE_OPENCL_SVM 41 | 42 | #endif // OPENCV_CORE_OCL_RUNTIME_OPENCL_SVM_DEFINITIONS_HPP 43 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/core/ovx.hpp: -------------------------------------------------------------------------------- 1 | // This file is part of OpenCV project. 2 | // It is subject to the license terms in the LICENSE file found in the top-level directory 3 | // of this distribution and at http://opencv.org/license.html. 4 | 5 | // Copyright (C) 2016, Intel Corporation, all rights reserved. 6 | // Third party copyrights are property of their respective owners. 7 | 8 | // OpenVX related definitions and declarations 9 | 10 | #pragma once 11 | #ifndef OPENCV_OVX_HPP 12 | #define OPENCV_OVX_HPP 13 | 14 | #include "cvdef.h" 15 | 16 | namespace cv 17 | { 18 | /// Check if use of OpenVX is possible 19 | CV_EXPORTS_W bool haveOpenVX(); 20 | 21 | /// Check if use of OpenVX is enabled 22 | CV_EXPORTS_W bool useOpenVX(); 23 | 24 | /// Enable/disable use of OpenVX 25 | CV_EXPORTS_W void setUseOpenVX(bool flag); 26 | } // namespace cv 27 | 28 | #endif // OPENCV_OVX_HPP 29 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/core/parallel/backend/parallel_for.openmp.hpp: -------------------------------------------------------------------------------- 1 | // This file is part of OpenCV project. 2 | // It is subject to the license terms in the LICENSE file found in the top-level directory 3 | // of this distribution and at http://opencv.org/license.html. 4 | 5 | #ifndef OPENCV_CORE_PARALLEL_FOR_OPENMP_HPP 6 | #define OPENCV_CORE_PARALLEL_FOR_OPENMP_HPP 7 | 8 | #include "opencv2/core/parallel/parallel_backend.hpp" 9 | 10 | #if !defined(_OPENMP) && !defined(OPENCV_SKIP_OPENMP_PRESENSE_CHECK) 11 | #error "This file must be compiled with enabled OpenMP" 12 | #endif 13 | 14 | #include 15 | 16 | namespace cv { namespace parallel { namespace openmp { 17 | 18 | /** OpenMP parallel_for API implementation 19 | * 20 | * @sa setParallelForBackend 21 | * @ingroup core_parallel_backend 22 | */ 23 | class ParallelForBackend : public ParallelForAPI 24 | { 25 | protected: 26 | int numThreads; 27 | int numThreadsMax; 28 | public: 29 | ParallelForBackend() 30 | { 31 | numThreads = 0; 32 | numThreadsMax = omp_get_max_threads(); 33 | } 34 | 35 | virtual ~ParallelForBackend() {} 36 | 37 | virtual void parallel_for(int tasks, FN_parallel_for_body_cb_t body_callback, void* callback_data) CV_OVERRIDE 38 | { 39 | #pragma omp parallel for schedule(dynamic) num_threads(numThreads > 0 ? numThreads : numThreadsMax) 40 | for (int i = 0; i < tasks; ++i) 41 | body_callback(i, i + 1, callback_data); 42 | } 43 | 44 | virtual int getThreadNum() const CV_OVERRIDE 45 | { 46 | return omp_get_thread_num(); 47 | } 48 | 49 | virtual int getNumThreads() const CV_OVERRIDE 50 | { 51 | return numThreads > 0 52 | ? numThreads 53 | : numThreadsMax; 54 | } 55 | 56 | virtual int setNumThreads(int nThreads) CV_OVERRIDE 57 | { 58 | int oldNumThreads = numThreads; 59 | numThreads = nThreads; 60 | // nothing needed as numThreads is used in #pragma omp parallel for directly 61 | return oldNumThreads; 62 | } 63 | 64 | const char* getName() const CV_OVERRIDE 65 | { 66 | return "openmp"; 67 | } 68 | }; 69 | 70 | }}} // namespace 71 | 72 | #endif // OPENCV_CORE_PARALLEL_FOR_OPENMP_HPP 73 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/core/utils/allocator_stats.hpp: -------------------------------------------------------------------------------- 1 | // This file is part of OpenCV project. 2 | // It is subject to the license terms in the LICENSE file found in the top-level directory 3 | // of this distribution and at http://opencv.org/license.html. 4 | 5 | #ifndef OPENCV_CORE_ALLOCATOR_STATS_HPP 6 | #define OPENCV_CORE_ALLOCATOR_STATS_HPP 7 | 8 | #include "../cvdef.h" 9 | 10 | namespace cv { namespace utils { 11 | 12 | class AllocatorStatisticsInterface 13 | { 14 | protected: 15 | AllocatorStatisticsInterface() {} 16 | virtual ~AllocatorStatisticsInterface() {} 17 | public: 18 | virtual uint64_t getCurrentUsage() const = 0; 19 | virtual uint64_t getTotalUsage() const = 0; 20 | virtual uint64_t getNumberOfAllocations() const = 0; 21 | virtual uint64_t getPeakUsage() const = 0; 22 | 23 | /** set peak usage = current usage */ 24 | virtual void resetPeakUsage() = 0; 25 | }; 26 | 27 | }} // namespace 28 | 29 | #endif // OPENCV_CORE_ALLOCATOR_STATS_HPP 30 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/core/utils/logger.defines.hpp: -------------------------------------------------------------------------------- 1 | // This file is part of OpenCV project. 2 | // It is subject to the license terms in the LICENSE file found in the top-level directory 3 | // of this distribution and at http://opencv.org/license.html. 4 | 5 | #ifndef OPENCV_LOGGER_DEFINES_HPP 6 | #define OPENCV_LOGGER_DEFINES_HPP 7 | 8 | //! @addtogroup core_logging 9 | //! @{ 10 | 11 | // Supported logging levels and their semantic 12 | #define CV_LOG_LEVEL_SILENT 0 //!< for using in setLogLevel() call 13 | #define CV_LOG_LEVEL_FATAL 1 //!< Fatal (critical) error (unrecoverable internal error) 14 | #define CV_LOG_LEVEL_ERROR 2 //!< Error message 15 | #define CV_LOG_LEVEL_WARN 3 //!< Warning message 16 | #define CV_LOG_LEVEL_INFO 4 //!< Info message 17 | #define CV_LOG_LEVEL_DEBUG 5 //!< Debug message. Disabled in the "Release" build. 18 | #define CV_LOG_LEVEL_VERBOSE 6 //!< Verbose (trace) messages. Requires verbosity level. Disabled in the "Release" build. 19 | 20 | namespace cv { 21 | namespace utils { 22 | namespace logging { 23 | 24 | //! Supported logging levels and their semantic 25 | enum LogLevel { 26 | LOG_LEVEL_SILENT = 0, //!< for using in setLogVevel() call 27 | LOG_LEVEL_FATAL = 1, //!< Fatal (critical) error (unrecoverable internal error) 28 | LOG_LEVEL_ERROR = 2, //!< Error message 29 | LOG_LEVEL_WARNING = 3, //!< Warning message 30 | LOG_LEVEL_INFO = 4, //!< Info message 31 | LOG_LEVEL_DEBUG = 5, //!< Debug message. Disabled in the "Release" build. 32 | LOG_LEVEL_VERBOSE = 6, //!< Verbose (trace) messages. Requires verbosity level. Disabled in the "Release" build. 33 | #ifndef CV_DOXYGEN 34 | ENUM_LOG_LEVEL_FORCE_INT = INT_MAX 35 | #endif 36 | }; 37 | 38 | }}} // namespace 39 | 40 | //! @} 41 | 42 | #endif // OPENCV_LOGGER_DEFINES_HPP 43 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/core/utils/logtag.hpp: -------------------------------------------------------------------------------- 1 | // This file is part of OpenCV project. 2 | // It is subject to the license terms in the LICENSE file found in the top-level directory 3 | // of this distribution and at http://opencv.org/license.html. 4 | 5 | #ifndef OPENCV_CORE_LOGTAG_HPP 6 | #define OPENCV_CORE_LOGTAG_HPP 7 | 8 | #include "opencv2/core/cvstd.hpp" 9 | #include "logger.defines.hpp" 10 | 11 | namespace cv { 12 | namespace utils { 13 | namespace logging { 14 | 15 | struct LogTag 16 | { 17 | const char* name; 18 | LogLevel level; 19 | 20 | inline LogTag(const char* _name, LogLevel _level) 21 | : name(_name) 22 | , level(_level) 23 | {} 24 | }; 25 | 26 | }}} 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/core/version.hpp: -------------------------------------------------------------------------------- 1 | // This file is part of OpenCV project. 2 | // It is subject to the license terms in the LICENSE file found in the top-level directory 3 | // of this distribution and at http://opencv.org/license.html. 4 | 5 | #ifndef OPENCV_VERSION_HPP 6 | #define OPENCV_VERSION_HPP 7 | 8 | #define CV_VERSION_MAJOR 4 9 | #define CV_VERSION_MINOR 5 10 | #define CV_VERSION_REVISION 3 11 | #define CV_VERSION_STATUS "" 12 | 13 | #define CVAUX_STR_EXP(__A) #__A 14 | #define CVAUX_STR(__A) CVAUX_STR_EXP(__A) 15 | 16 | #define CVAUX_STRW_EXP(__A) L ## #__A 17 | #define CVAUX_STRW(__A) CVAUX_STRW_EXP(__A) 18 | 19 | #define CV_VERSION CVAUX_STR(CV_VERSION_MAJOR) "." CVAUX_STR(CV_VERSION_MINOR) "." CVAUX_STR(CV_VERSION_REVISION) CV_VERSION_STATUS 20 | 21 | /* old style version constants*/ 22 | #define CV_MAJOR_VERSION CV_VERSION_MAJOR 23 | #define CV_MINOR_VERSION CV_VERSION_MINOR 24 | #define CV_SUBMINOR_VERSION CV_VERSION_REVISION 25 | 26 | #endif // OPENCV_VERSION_HPP 27 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/features2d/features2d.hpp: -------------------------------------------------------------------------------- 1 | /*M/////////////////////////////////////////////////////////////////////////////////////// 2 | // 3 | // IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING. 4 | // 5 | // By downloading, copying, installing or using the software you agree to this license. 6 | // If you do not agree to this license, do not download, install, 7 | // copy or use the software. 8 | // 9 | // 10 | // License Agreement 11 | // For Open Source Computer Vision Library 12 | // 13 | // Copyright (C) 2000-2008, Intel Corporation, all rights reserved. 14 | // Copyright (C) 2009, Willow Garage Inc., all rights reserved. 15 | // Copyright (C) 2013, OpenCV Foundation, all rights reserved. 16 | // Third party copyrights are property of their respective owners. 17 | // 18 | // Redistribution and use in source and binary forms, with or without modification, 19 | // are permitted provided that the following conditions are met: 20 | // 21 | // * Redistribution's of source code must retain the above copyright notice, 22 | // this list of conditions and the following disclaimer. 23 | // 24 | // * Redistribution's in binary form must reproduce the above copyright notice, 25 | // this list of conditions and the following disclaimer in the documentation 26 | // and/or other materials provided with the distribution. 27 | // 28 | // * The name of the copyright holders may not be used to endorse or promote products 29 | // derived from this software without specific prior written permission. 30 | // 31 | // This software is provided by the copyright holders and contributors "as is" and 32 | // any express or implied warranties, including, but not limited to, the implied 33 | // warranties of merchantability and fitness for a particular purpose are disclaimed. 34 | // In no event shall the Intel Corporation or contributors be liable for any direct, 35 | // indirect, incidental, special, exemplary, or consequential damages 36 | // (including, but not limited to, procurement of substitute goods or services; 37 | // loss of use, data, or profits; or business interruption) however caused 38 | // and on any theory of liability, whether in contract, strict liability, 39 | // or tort (including negligence or otherwise) arising in any way out of 40 | // the use of this software, even if advised of the possibility of such damage. 41 | // 42 | //M*/ 43 | 44 | #ifdef __OPENCV_BUILD 45 | #error this is a compatibility header which should not be used inside the OpenCV library 46 | #endif 47 | 48 | #include "opencv2/features2d.hpp" 49 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/features2d/hal/interface.h: -------------------------------------------------------------------------------- 1 | #ifndef OPENCV_FEATURE2D_HAL_INTERFACE_H 2 | #define OPENCV_FEATURE2D_HAL_INTERFACE_H 3 | 4 | #include "opencv2/core/cvdef.h" 5 | //! @addtogroup features2d_hal_interface 6 | //! @{ 7 | 8 | //! @name Fast feature detector types 9 | //! @sa cv::FastFeatureDetector 10 | //! @{ 11 | #define CV_HAL_TYPE_5_8 0 12 | #define CV_HAL_TYPE_7_12 1 13 | #define CV_HAL_TYPE_9_16 2 14 | //! @} 15 | 16 | //! @name Key point 17 | //! @sa cv::KeyPoint 18 | //! @{ 19 | struct CV_EXPORTS cvhalKeyPoint 20 | { 21 | float x; 22 | float y; 23 | float size; 24 | float angle; 25 | float response; 26 | int octave; 27 | int class_id; 28 | }; 29 | //! @} 30 | 31 | //! @} 32 | 33 | #endif 34 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/highgui.hpp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2021 nihui 3 | // 4 | // Licensed under the Apache License, Version 2.0 (the "License"); 5 | // you may not use this file except in compliance with the License. 6 | // You may obtain a copy of the License at 7 | // 8 | // http://www.apache.org/licenses/LICENSE-2.0 9 | // 10 | // Unless required by applicable law or agreed to in writing, software 11 | // distributed under the License is distributed on an "AS IS" BASIS, 12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | // See the License for the specific language governing permissions and 14 | // limitations under the License. 15 | // 16 | 17 | #include "opencv2/highgui/highgui.hpp" 18 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/highgui/highgui.hpp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2021 nihui 3 | // 4 | // Licensed under the Apache License, Version 2.0 (the "License"); 5 | // you may not use this file except in compliance with the License. 6 | // You may obtain a copy of the License at 7 | // 8 | // http://www.apache.org/licenses/LICENSE-2.0 9 | // 10 | // Unless required by applicable law or agreed to in writing, software 11 | // distributed under the License is distributed on an "AS IS" BASIS, 12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | // See the License for the specific language governing permissions and 14 | // limitations under the License. 15 | // 16 | 17 | #ifndef OPENCV_HIGHGUI_HPP 18 | #define OPENCV_HIGHGUI_HPP 19 | 20 | #include "opencv2/core.hpp" 21 | 22 | enum 23 | { 24 | CV_LOAD_IMAGE_UNCHANGED = -1, 25 | CV_LOAD_IMAGE_GRAYSCALE = 0, 26 | CV_LOAD_IMAGE_COLOR = 1, 27 | }; 28 | 29 | enum 30 | { 31 | CV_IMWRITE_JPEG_QUALITY = 1 32 | }; 33 | 34 | namespace cv { 35 | 36 | enum ImreadModes 37 | { 38 | IMREAD_UNCHANGED = -1, 39 | IMREAD_GRAYSCALE = 0, 40 | IMREAD_COLOR = 1 41 | }; 42 | 43 | enum ImwriteFlags 44 | { 45 | IMWRITE_JPEG_QUALITY = 1 46 | }; 47 | 48 | CV_EXPORTS_W Mat imread(const String& filename, int flags = IMREAD_COLOR); 49 | 50 | CV_EXPORTS_W bool imwrite(const String& filename, InputArray img, const std::vector& params = std::vector()); 51 | 52 | CV_EXPORTS_W Mat imdecode(InputArray buf, int flags); 53 | 54 | CV_EXPORTS_W bool imencode(const String& ext, InputArray img, CV_OUT std::vector& buf, const std::vector& params = std::vector()); 55 | 56 | CV_EXPORTS_W void imshow(const String& winname, InputArray mat); 57 | 58 | CV_EXPORTS_W int waitKey(int delay = 0); 59 | 60 | } // namespace cv 61 | 62 | #endif // OPENCV_HIGHGUI_HPP 63 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/imgproc/bindings.hpp: -------------------------------------------------------------------------------- 1 | // This file is part of OpenCV project. 2 | // It is subject to the license terms in the LICENSE file found in the top-level directory 3 | // of this distribution and at http://opencv.org/license.html. 4 | 5 | #ifndef OPENCV_IMGPROC_BINDINGS_HPP 6 | #define OPENCV_IMGPROC_BINDINGS_HPP 7 | 8 | // This file contains special overloads for OpenCV bindings 9 | // No need to use these functions in C++ code. 10 | 11 | namespace cv { 12 | 13 | /** @brief Finds lines in a binary image using the standard Hough transform and get accumulator. 14 | * 15 | * @note This function is for bindings use only. Use original function in C++ code 16 | * 17 | * @sa HoughLines 18 | */ 19 | CV_WRAP static inline 20 | void HoughLinesWithAccumulator( 21 | InputArray image, OutputArray lines, 22 | double rho, double theta, int threshold, 23 | double srn = 0, double stn = 0, 24 | double min_theta = 0, double max_theta = CV_PI 25 | ) 26 | { 27 | std::vector lines_acc; 28 | HoughLines(image, lines_acc, rho, theta, threshold, srn, stn, min_theta, max_theta); 29 | Mat(lines_acc).copyTo(lines); 30 | } 31 | 32 | } // namespace 33 | 34 | #endif // OPENCV_IMGPROC_BINDINGS_HPP 35 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/imgproc/hal/interface.h: -------------------------------------------------------------------------------- 1 | #ifndef OPENCV_IMGPROC_HAL_INTERFACE_H 2 | #define OPENCV_IMGPROC_HAL_INTERFACE_H 3 | 4 | //! @addtogroup imgproc_hal_interface 5 | //! @{ 6 | 7 | //! @name Interpolation modes 8 | //! @sa cv::InterpolationFlags 9 | //! @{ 10 | #define CV_HAL_INTER_NEAREST 0 11 | #define CV_HAL_INTER_LINEAR 1 12 | #define CV_HAL_INTER_CUBIC 2 13 | #define CV_HAL_INTER_AREA 3 14 | #define CV_HAL_INTER_LANCZOS4 4 15 | //! @} 16 | 17 | //! @name Morphology operations 18 | //! @sa cv::MorphTypes 19 | //! @{ 20 | #define CV_HAL_MORPH_ERODE 0 21 | #define CV_HAL_MORPH_DILATE 1 22 | //! @} 23 | 24 | //! @name Threshold types 25 | //! @sa cv::ThresholdTypes 26 | //! @{ 27 | #define CV_HAL_THRESH_BINARY 0 28 | #define CV_HAL_THRESH_BINARY_INV 1 29 | #define CV_HAL_THRESH_TRUNC 2 30 | #define CV_HAL_THRESH_TOZERO 3 31 | #define CV_HAL_THRESH_TOZERO_INV 4 32 | #define CV_HAL_THRESH_MASK 7 33 | #define CV_HAL_THRESH_OTSU 8 34 | #define CV_HAL_THRESH_TRIANGLE 16 35 | //! @} 36 | 37 | //! @name Adaptive threshold algorithm 38 | //! @sa cv::AdaptiveThresholdTypes 39 | //! @{ 40 | #define CV_HAL_ADAPTIVE_THRESH_MEAN_C 0 41 | #define CV_HAL_ADAPTIVE_THRESH_GAUSSIAN_C 1 42 | //! @} 43 | 44 | //! @} 45 | 46 | #endif 47 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/imgproc/imgproc.hpp: -------------------------------------------------------------------------------- 1 | /*M/////////////////////////////////////////////////////////////////////////////////////// 2 | // 3 | // IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING. 4 | // 5 | // By downloading, copying, installing or using the software you agree to this license. 6 | // If you do not agree to this license, do not download, install, 7 | // copy or use the software. 8 | // 9 | // 10 | // License Agreement 11 | // For Open Source Computer Vision Library 12 | // 13 | // Copyright (C) 2000-2008, Intel Corporation, all rights reserved. 14 | // Copyright (C) 2009, Willow Garage Inc., all rights reserved. 15 | // Copyright (C) 2013, OpenCV Foundation, all rights reserved. 16 | // Third party copyrights are property of their respective owners. 17 | // 18 | // Redistribution and use in source and binary forms, with or without modification, 19 | // are permitted provided that the following conditions are met: 20 | // 21 | // * Redistribution's of source code must retain the above copyright notice, 22 | // this list of conditions and the following disclaimer. 23 | // 24 | // * Redistribution's in binary form must reproduce the above copyright notice, 25 | // this list of conditions and the following disclaimer in the documentation 26 | // and/or other materials provided with the distribution. 27 | // 28 | // * The name of the copyright holders may not be used to endorse or promote products 29 | // derived from this software without specific prior written permission. 30 | // 31 | // This software is provided by the copyright holders and contributors "as is" and 32 | // any express or implied warranties, including, but not limited to, the implied 33 | // warranties of merchantability and fitness for a particular purpose are disclaimed. 34 | // In no event shall the Intel Corporation or contributors be liable for any direct, 35 | // indirect, incidental, special, exemplary, or consequential damages 36 | // (including, but not limited to, procurement of substitute goods or services; 37 | // loss of use, data, or profits; or business interruption) however caused 38 | // and on any theory of liability, whether in contract, strict liability, 39 | // or tort (including negligence or otherwise) arising in any way out of 40 | // the use of this software, even if advised of the possibility of such damage. 41 | // 42 | //M*/ 43 | 44 | #ifdef __OPENCV_BUILD 45 | #error this is a compatibility header which should not be used inside the OpenCV library 46 | #endif 47 | 48 | #include "opencv2/imgproc.hpp" 49 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/opencv_modules.hpp: -------------------------------------------------------------------------------- 1 | /* 2 | * ** File generated automatically, do not modify ** 3 | * 4 | * This file defines the list of modules available in current build configuration 5 | * 6 | * 7 | */ 8 | 9 | // This definition means that OpenCV is built with enabled non-free code. 10 | // For example, patented algorithms for non-profit/non-commercial use only. 11 | /* #undef OPENCV_ENABLE_NONFREE */ 12 | 13 | #define HAVE_OPENCV_CORE 14 | #define HAVE_OPENCV_FEATURES2D 15 | #define HAVE_OPENCV_HIGHGUI 16 | #define HAVE_OPENCV_IMGPROC 17 | #define HAVE_OPENCV_PHOTO 18 | #define HAVE_OPENCV_VIDEO 19 | 20 | 21 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/photo/legacy/constants_c.h: -------------------------------------------------------------------------------- 1 | // This file is part of OpenCV project. 2 | // It is subject to the license terms in the LICENSE file found in the top-level directory 3 | // of this distribution and at http://opencv.org/license.html. 4 | 5 | #ifndef OPENCV_PHOTO_LEGACY_CONSTANTS_H 6 | #define OPENCV_PHOTO_LEGACY_CONSTANTS_H 7 | 8 | enum InpaintingModes 9 | { 10 | CV_INPAINT_NS =0, 11 | CV_INPAINT_TELEA =1 12 | }; 13 | 14 | #endif // OPENCV_PHOTO_LEGACY_CONSTANTS_H 15 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/photo/photo.hpp: -------------------------------------------------------------------------------- 1 | /*M/////////////////////////////////////////////////////////////////////////////////////// 2 | // 3 | // IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING. 4 | // 5 | // By downloading, copying, installing or using the software you agree to this license. 6 | // If you do not agree to this license, do not download, install, 7 | // copy or use the software. 8 | // 9 | // 10 | // License Agreement 11 | // For Open Source Computer Vision Library 12 | // 13 | // Copyright (C) 2000-2008, Intel Corporation, all rights reserved. 14 | // Copyright (C) 2009, Willow Garage Inc., all rights reserved. 15 | // Copyright (C) 2013, OpenCV Foundation, all rights reserved. 16 | // Third party copyrights are property of their respective owners. 17 | // 18 | // Redistribution and use in source and binary forms, with or without modification, 19 | // are permitted provided that the following conditions are met: 20 | // 21 | // * Redistribution's of source code must retain the above copyright notice, 22 | // this list of conditions and the following disclaimer. 23 | // 24 | // * Redistribution's in binary form must reproduce the above copyright notice, 25 | // this list of conditions and the following disclaimer in the documentation 26 | // and/or other materials provided with the distribution. 27 | // 28 | // * The name of the copyright holders may not be used to endorse or promote products 29 | // derived from this software without specific prior written permission. 30 | // 31 | // This software is provided by the copyright holders and contributors "as is" and 32 | // any express or implied warranties, including, but not limited to, the implied 33 | // warranties of merchantability and fitness for a particular purpose are disclaimed. 34 | // In no event shall the Intel Corporation or contributors be liable for any direct, 35 | // indirect, incidental, special, exemplary, or consequential damages 36 | // (including, but not limited to, procurement of substitute goods or services; 37 | // loss of use, data, or profits; or business interruption) however caused 38 | // and on any theory of liability, whether in contract, strict liability, 39 | // or tort (including negligence or otherwise) arising in any way out of 40 | // the use of this software, even if advised of the possibility of such damage. 41 | // 42 | //M*/ 43 | 44 | #ifdef __OPENCV_BUILD 45 | #error this is a compatibility header which should not be used inside the OpenCV library 46 | #endif 47 | 48 | #include "opencv2/photo.hpp" 49 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/video/legacy/constants_c.h: -------------------------------------------------------------------------------- 1 | // This file is part of OpenCV project. 2 | // It is subject to the license terms in the LICENSE file found in the top-level directory 3 | // of this distribution and at http://opencv.org/license.html. 4 | 5 | #ifndef OPENCV_VIDEO_LEGACY_CONSTANTS_H 6 | #define OPENCV_VIDEO_LEGACY_CONSTANTS_H 7 | 8 | enum 9 | { 10 | CV_LKFLOW_PYR_A_READY = 1, 11 | CV_LKFLOW_PYR_B_READY = 2, 12 | CV_LKFLOW_INITIAL_GUESSES = 4, 13 | CV_LKFLOW_GET_MIN_EIGENVALS = 8 14 | }; 15 | 16 | #endif // OPENCV_VIDEO_LEGACY_CONSTANTS_H 17 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/jni/include/opencv2/video/video.hpp: -------------------------------------------------------------------------------- 1 | /*M/////////////////////////////////////////////////////////////////////////////////////// 2 | // 3 | // IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING. 4 | // 5 | // By downloading, copying, installing or using the software you agree to this license. 6 | // If you do not agree to this license, do not download, install, 7 | // copy or use the software. 8 | // 9 | // 10 | // License Agreement 11 | // For Open Source Computer Vision Library 12 | // 13 | // Copyright (C) 2000-2008, Intel Corporation, all rights reserved. 14 | // Copyright (C) 2009, Willow Garage Inc., all rights reserved. 15 | // Copyright (C) 2013, OpenCV Foundation, all rights reserved. 16 | // Third party copyrights are property of their respective owners. 17 | // 18 | // Redistribution and use in source and binary forms, with or without modification, 19 | // are permitted provided that the following conditions are met: 20 | // 21 | // * Redistribution's of source code must retain the above copyright notice, 22 | // this list of conditions and the following disclaimer. 23 | // 24 | // * Redistribution's in binary form must reproduce the above copyright notice, 25 | // this list of conditions and the following disclaimer in the documentation 26 | // and/or other materials provided with the distribution. 27 | // 28 | // * The name of the copyright holders may not be used to endorse or promote products 29 | // derived from this software without specific prior written permission. 30 | // 31 | // This software is provided by the copyright holders and contributors "as is" and 32 | // any express or implied warranties, including, but not limited to, the implied 33 | // warranties of merchantability and fitness for a particular purpose are disclaimed. 34 | // In no event shall the Intel Corporation or contributors be liable for any direct, 35 | // indirect, incidental, special, exemplary, or consequential damages 36 | // (including, but not limited to, procurement of substitute goods or services; 37 | // loss of use, data, or profits; or business interruption) however caused 38 | // and on any theory of liability, whether in contract, strict liability, 39 | // or tort (including negligence or otherwise) arising in any way out of 40 | // the use of this software, even if advised of the possibility of such damage. 41 | // 42 | //M*/ 43 | 44 | #ifdef __OPENCV_BUILD 45 | #error this is a compatibility header which should not be used inside the OpenCV library 46 | #endif 47 | 48 | #include "opencv2/video.hpp" 49 | -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/arm64-v8a/libopencv_core.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/arm64-v8a/libopencv_core.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/arm64-v8a/libopencv_features2d.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/arm64-v8a/libopencv_features2d.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/arm64-v8a/libopencv_highgui.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/arm64-v8a/libopencv_highgui.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/arm64-v8a/libopencv_imgproc.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/arm64-v8a/libopencv_imgproc.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/arm64-v8a/libopencv_photo.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/arm64-v8a/libopencv_photo.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/arm64-v8a/libopencv_video.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/arm64-v8a/libopencv_video.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/armeabi-v7a/libopencv_core.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/armeabi-v7a/libopencv_core.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/armeabi-v7a/libopencv_features2d.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/armeabi-v7a/libopencv_features2d.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/armeabi-v7a/libopencv_highgui.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/armeabi-v7a/libopencv_highgui.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/armeabi-v7a/libopencv_imgproc.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/armeabi-v7a/libopencv_imgproc.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/armeabi-v7a/libopencv_photo.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/armeabi-v7a/libopencv_photo.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/armeabi-v7a/libopencv_video.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/armeabi-v7a/libopencv_video.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86/libopencv_core.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86/libopencv_core.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86/libopencv_features2d.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86/libopencv_features2d.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86/libopencv_highgui.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86/libopencv_highgui.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86/libopencv_imgproc.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86/libopencv_imgproc.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86/libopencv_photo.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86/libopencv_photo.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86/libopencv_video.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86/libopencv_video.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86_64/libopencv_core.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86_64/libopencv_core.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86_64/libopencv_features2d.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86_64/libopencv_features2d.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86_64/libopencv_highgui.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86_64/libopencv_highgui.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86_64/libopencv_imgproc.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86_64/libopencv_imgproc.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86_64/libopencv_photo.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86_64/libopencv_photo.a -------------------------------------------------------------------------------- /app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86_64/libopencv_video.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cyrillkuettel/ncnn-android-yolov5/50a2df483b98a1489e6f8a62f511c58a580f0e07/app/src/main/jni/opencv-mobile-4.5.3-android/sdk/native/staticlibs/x86_64/libopencv_video.a -------------------------------------------------------------------------------- /app/src/main/jni/yolox.h: -------------------------------------------------------------------------------- 1 | #ifndef YOLOX_H 2 | #define YOLOX_H 3 | 4 | #include 5 | 6 | #include 7 | 8 | struct Object 9 | { 10 | cv::Rect_ rect; 11 | int label; 12 | float prob; 13 | }; 14 | 15 | extern JavaVM* javaVM_global; 16 | extern jclass MainActivityClass; 17 | extern jobject MainActivityObject; 18 | 19 | class Yolox 20 | { 21 | public: 22 | Yolox(); 23 | 24 | int load(const char* modeltype, int target_size, const float* mean_vals, const float* norm_vals, bool use_gpu = false); 25 | 26 | int load(AAssetManager* mgr, const char* modeltype, int target_size, bool use_gpu = false); 27 | 28 | int detect(const cv::Mat& rgb, std::vector& objects, float prob_threshold = 0.60f, float nms_threshold = 0.60f); 29 | 30 | int draw(cv::Mat& rgb, const std::vector& objects); 31 | 32 | private: 33 | 34 | ncnn::Net yolox; 35 | 36 | int target_size; 37 | float mean_vals[3]; 38 | float norm_vals[3]; 39 | int image_w; 40 | int image_h; 41 | int in_w; 42 | int in_h; 43 | 44 | ncnn::UnlockedPoolAllocator blob_pool_allocator; 45 | ncnn::PoolAllocator workspace_pool_allocator; 46 | }; 47 | 48 | #endif // NANODET_H 49 | -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 11 | 12 |