gitextract_o0iva_dz/ ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug.yml │ │ ├── config.yml │ │ └── feature.yml │ └── workflows/ │ ├── build_cpp.yml │ ├── build_matlab.yml │ └── build_python.yml ├── .gitignore ├── CMakeLists.txt ├── LICENSE.txt ├── MANIFEST.in ├── README.md ├── dlib/ │ ├── CMakeLists.txt │ ├── LICENSE.txt │ ├── algs.h │ ├── all/ │ │ └── source.cpp │ ├── any/ │ │ ├── any.h │ │ ├── any_abstract.h │ │ ├── any_decision_function.h │ │ ├── any_decision_function_abstract.h │ │ ├── any_function.h │ │ ├── any_function_abstract.h │ │ ├── any_trainer.h │ │ ├── any_trainer_abstract.h │ │ └── storage.h │ ├── any.h │ ├── array/ │ │ ├── array_kernel.h │ │ ├── array_kernel_abstract.h │ │ ├── array_tools.h │ │ └── array_tools_abstract.h │ ├── array.h │ ├── array2d/ │ │ ├── array2d_generic_image.h │ │ ├── array2d_kernel.h │ │ ├── array2d_kernel_abstract.h │ │ └── serialize_pixel_overloads.h │ ├── array2d.h │ ├── assert.h │ ├── base64/ │ │ ├── base64_kernel_1.cpp │ │ ├── base64_kernel_1.h │ │ └── base64_kernel_abstract.h │ ├── base64.h │ ├── bayes_utils/ │ │ ├── bayes_utils.h │ │ └── bayes_utils_abstract.h │ ├── bayes_utils.h │ ├── bigint/ │ │ ├── bigint_kernel_1.cpp │ │ ├── bigint_kernel_1.h │ │ ├── bigint_kernel_2.cpp │ │ ├── bigint_kernel_2.h │ │ ├── bigint_kernel_abstract.h │ │ └── bigint_kernel_c.h │ ├── bigint.h │ ├── binary_search_tree/ │ │ ├── binary_search_tree_kernel_1.h │ │ ├── binary_search_tree_kernel_2.h │ │ ├── binary_search_tree_kernel_abstract.h │ │ └── binary_search_tree_kernel_c.h │ ├── binary_search_tree.h │ ├── bit_stream/ │ │ ├── bit_stream_kernel_1.cpp │ │ ├── bit_stream_kernel_1.h │ │ ├── bit_stream_kernel_abstract.h │ │ ├── bit_stream_kernel_c.h │ │ ├── bit_stream_multi_1.h │ │ ├── bit_stream_multi_abstract.h │ │ └── bit_stream_multi_c.h │ ├── bit_stream.h │ ├── bits/ │ │ └── c++config.h │ ├── bound_function_pointer/ │ │ ├── bound_function_pointer_kernel_1.h │ │ └── bound_function_pointer_kernel_abstract.h │ ├── bound_function_pointer.h │ ├── bridge/ │ │ ├── bridge.h │ │ └── bridge_abstract.h │ ├── bridge.h │ ├── bsp/ │ │ ├── bsp.cpp │ │ ├── bsp.h │ │ └── bsp_abstract.h │ ├── bsp.h │ ├── byte_orderer/ │ │ ├── byte_orderer_kernel_1.h │ │ └── byte_orderer_kernel_abstract.h │ ├── byte_orderer.h │ ├── cassert │ ├── clustering/ │ │ ├── bottom_up_cluster.h │ │ ├── bottom_up_cluster_abstract.h │ │ ├── chinese_whispers.h │ │ ├── chinese_whispers_abstract.h │ │ ├── modularity_clustering.h │ │ ├── modularity_clustering_abstract.h │ │ ├── spectral_cluster.h │ │ └── spectral_cluster_abstract.h │ ├── clustering.h │ ├── cmake │ ├── cmake_utils/ │ │ ├── FindCUDNN.cmake │ │ ├── check_if_avx_instructions_executable_on_host.cmake │ │ ├── check_if_neon_available.cmake │ │ ├── check_if_sse4_instructions_executable_on_host.cmake │ │ ├── dlib.pc.in │ │ ├── dlibConfig.cmake.in │ │ ├── find_blas.cmake │ │ ├── find_ffmpeg.cmake │ │ ├── find_libjpeg.cmake │ │ ├── find_libjxl.cmake │ │ ├── find_libpng.cmake │ │ ├── find_libwebp.cmake │ │ ├── release_build_by_default │ │ ├── set_compiler_specific_options.cmake │ │ ├── tell_visual_studio_to_use_static_runtime.cmake │ │ ├── test_for_avx/ │ │ │ ├── CMakeLists.txt │ │ │ ├── avx_test.cpp │ │ │ └── this_file_doesnt_compile.cpp │ │ ├── test_for_libjpeg/ │ │ │ ├── CMakeLists.txt │ │ │ └── libjpeg_test.cpp │ │ ├── test_for_libjxl/ │ │ │ ├── CMakeLists.txt │ │ │ └── libjxl_test.cpp │ │ ├── test_for_libpng/ │ │ │ ├── CMakeLists.txt │ │ │ └── libpng_test.cpp │ │ ├── test_for_libwebp/ │ │ │ ├── CMakeLists.txt │ │ │ └── libwebp_test.cpp │ │ ├── test_for_neon/ │ │ │ ├── CMakeLists.txt │ │ │ └── neon_test.cpp │ │ └── test_for_sse4/ │ │ ├── CMakeLists.txt │ │ ├── sse4_test.cpp │ │ └── this_file_doesnt_compile.cpp │ ├── cmd_line_parser/ │ │ ├── cmd_line_parser_check_1.h │ │ ├── cmd_line_parser_check_c.h │ │ ├── cmd_line_parser_kernel_1.h │ │ ├── cmd_line_parser_kernel_abstract.h │ │ ├── cmd_line_parser_kernel_c.h │ │ ├── cmd_line_parser_print_1.h │ │ ├── get_option.h │ │ └── get_option_abstract.h │ ├── cmd_line_parser.h │ ├── compress_stream/ │ │ ├── compress_stream_kernel_1.h │ │ ├── compress_stream_kernel_2.h │ │ ├── compress_stream_kernel_3.h │ │ └── compress_stream_kernel_abstract.h │ ├── compress_stream.h │ ├── conditioning_class/ │ │ ├── conditioning_class_kernel_1.h │ │ ├── conditioning_class_kernel_2.h │ │ ├── conditioning_class_kernel_3.h │ │ ├── conditioning_class_kernel_4.h │ │ ├── conditioning_class_kernel_abstract.h │ │ └── conditioning_class_kernel_c.h │ ├── conditioning_class.h │ ├── config.h │ ├── config.h.in │ ├── config_reader/ │ │ ├── config_reader_kernel_1.h │ │ ├── config_reader_kernel_abstract.h │ │ ├── config_reader_thread_safe_1.h │ │ └── config_reader_thread_safe_abstract.h │ ├── config_reader.h │ ├── console_progress_indicator.h │ ├── constexpr_if.h │ ├── control/ │ │ ├── approximate_linear_models.h │ │ ├── approximate_linear_models_abstract.h │ │ ├── lspi.h │ │ ├── lspi_abstract.h │ │ ├── mpc.h │ │ └── mpc_abstract.h │ ├── control.h │ ├── cpp_pretty_printer/ │ │ ├── cpp_pretty_printer_kernel_1.h │ │ ├── cpp_pretty_printer_kernel_2.h │ │ └── cpp_pretty_printer_kernel_abstract.h │ ├── cpp_pretty_printer.h │ ├── cpp_tokenizer/ │ │ ├── cpp_tokenizer_kernel_1.h │ │ ├── cpp_tokenizer_kernel_abstract.h │ │ └── cpp_tokenizer_kernel_c.h │ ├── cpp_tokenizer.h │ ├── crc32/ │ │ ├── crc32_kernel_1.h │ │ └── crc32_kernel_abstract.h │ ├── crc32.h │ ├── cstring │ ├── cuda/ │ │ ├── cpu_dlib.cpp │ │ ├── cpu_dlib.h │ │ ├── cublas_dlibapi.cpp │ │ ├── cublas_dlibapi.h │ │ ├── cuda_data_ptr.cpp │ │ ├── cuda_data_ptr.h │ │ ├── cuda_dlib.cu │ │ ├── cuda_dlib.h │ │ ├── cuda_errors.h │ │ ├── cuda_utils.h │ │ ├── cudnn_dlibapi.cpp │ │ ├── cudnn_dlibapi.h │ │ ├── curand_dlibapi.cpp │ │ ├── curand_dlibapi.h │ │ ├── cusolver_dlibapi.cu │ │ ├── cusolver_dlibapi.h │ │ ├── gpu_data.cpp │ │ ├── gpu_data.h │ │ ├── gpu_data_abstract.h │ │ ├── operation_mode.h │ │ ├── tensor.h │ │ ├── tensor_abstract.h │ │ ├── tensor_tools.cpp │ │ └── tensor_tools.h │ ├── data_io/ │ │ ├── arc_agi.h │ │ ├── arc_agi_abstract.h │ │ ├── cifar.cpp │ │ ├── cifar.h │ │ ├── cifar_abstract.h │ │ ├── image_dataset_metadata.cpp │ │ ├── image_dataset_metadata.h │ │ ├── libsvm_io.h │ │ ├── libsvm_io_abstract.h │ │ ├── load_image_dataset.h │ │ ├── load_image_dataset_abstract.h │ │ ├── mnist.cpp │ │ ├── mnist.h │ │ └── mnist_abstract.h │ ├── data_io.h │ ├── dir_nav/ │ │ ├── dir_nav_extensions.cpp │ │ ├── dir_nav_extensions.h │ │ ├── dir_nav_extensions_abstract.h │ │ ├── dir_nav_kernel_1.cpp │ │ ├── dir_nav_kernel_1.h │ │ ├── dir_nav_kernel_2.cpp │ │ ├── dir_nav_kernel_2.h │ │ ├── dir_nav_kernel_abstract.h │ │ ├── posix.h │ │ └── windows.h │ ├── dir_nav.h │ ├── directed_graph/ │ │ ├── directed_graph_kernel_1.h │ │ └── directed_graph_kernel_abstract.h │ ├── directed_graph.h │ ├── disjoint_subsets/ │ │ ├── disjoint_subsets.h │ │ ├── disjoint_subsets_abstract.h │ │ ├── disjoint_subsets_sized.h │ │ └── disjoint_subsets_sized_abstract.h │ ├── disjoint_subsets.h │ ├── dlib_basic_cpp_build_tutorial.txt │ ├── dlib_include_path_tutorial.txt │ ├── dnn/ │ │ ├── core.h │ │ ├── core_abstract.h │ │ ├── input.h │ │ ├── input_abstract.h │ │ ├── layers.h │ │ ├── layers_abstract.h │ │ ├── loss.h │ │ ├── loss_abstract.h │ │ ├── solvers.h │ │ ├── solvers_abstract.h │ │ ├── trainer.h │ │ ├── trainer_abstract.h │ │ ├── utilities.h │ │ ├── utilities_abstract.h │ │ ├── validation.h │ │ ├── visitors.h │ │ └── visitors_abstract.h │ ├── dnn.h │ ├── enable_if.h │ ├── entropy_decoder/ │ │ ├── entropy_decoder_kernel_1.cpp │ │ ├── entropy_decoder_kernel_1.h │ │ ├── entropy_decoder_kernel_2.cpp │ │ ├── entropy_decoder_kernel_2.h │ │ ├── entropy_decoder_kernel_abstract.h │ │ └── entropy_decoder_kernel_c.h │ ├── entropy_decoder.h │ ├── entropy_decoder_model/ │ │ ├── entropy_decoder_model_kernel_1.h │ │ ├── entropy_decoder_model_kernel_2.h │ │ ├── entropy_decoder_model_kernel_3.h │ │ ├── entropy_decoder_model_kernel_4.h │ │ ├── entropy_decoder_model_kernel_5.h │ │ ├── entropy_decoder_model_kernel_6.h │ │ └── entropy_decoder_model_kernel_abstract.h │ ├── entropy_decoder_model.h │ ├── entropy_encoder/ │ │ ├── entropy_encoder_kernel_1.cpp │ │ ├── entropy_encoder_kernel_1.h │ │ ├── entropy_encoder_kernel_2.cpp │ │ ├── entropy_encoder_kernel_2.h │ │ ├── entropy_encoder_kernel_abstract.h │ │ └── entropy_encoder_kernel_c.h │ ├── entropy_encoder.h │ ├── entropy_encoder_model/ │ │ ├── entropy_encoder_model_kernel_1.h │ │ ├── entropy_encoder_model_kernel_2.h │ │ ├── entropy_encoder_model_kernel_3.h │ │ ├── entropy_encoder_model_kernel_4.h │ │ ├── entropy_encoder_model_kernel_5.h │ │ ├── entropy_encoder_model_kernel_6.h │ │ ├── entropy_encoder_model_kernel_abstract.h │ │ └── entropy_encoder_model_kernel_c.h │ ├── entropy_encoder_model.h │ ├── error.h │ ├── external/ │ │ ├── cblas/ │ │ │ ├── CMakeLists.txt │ │ │ ├── README │ │ │ ├── cblas.h │ │ │ ├── cblas_caxpy.c │ │ │ ├── cblas_ccopy.c │ │ │ ├── cblas_cdotc_sub.c │ │ │ ├── cblas_cdotu_sub.c │ │ │ ├── cblas_cgbmv.c │ │ │ ├── cblas_cgemm.c │ │ │ ├── cblas_cgemv.c │ │ │ ├── cblas_cgerc.c │ │ │ ├── cblas_cgeru.c │ │ │ ├── cblas_chbmv.c │ │ │ ├── cblas_chemm.c │ │ │ ├── cblas_chemv.c │ │ │ ├── cblas_cher.c │ │ │ ├── cblas_cher2.c │ │ │ ├── cblas_cher2k.c │ │ │ ├── cblas_cherk.c │ │ │ ├── cblas_chpmv.c │ │ │ ├── cblas_chpr.c │ │ │ ├── cblas_chpr2.c │ │ │ ├── cblas_cscal.c │ │ │ ├── cblas_csscal.c │ │ │ ├── cblas_cswap.c │ │ │ ├── cblas_csymm.c │ │ │ ├── cblas_csyr2k.c │ │ │ ├── cblas_csyrk.c │ │ │ ├── cblas_ctbmv.c │ │ │ ├── cblas_ctbsv.c │ │ │ ├── cblas_ctpmv.c │ │ │ ├── cblas_ctpsv.c │ │ │ ├── cblas_ctrmm.c │ │ │ ├── cblas_ctrmv.c │ │ │ ├── cblas_ctrsm.c │ │ │ ├── cblas_ctrsv.c │ │ │ ├── cblas_dasum.c │ │ │ ├── cblas_daxpy.c │ │ │ ├── cblas_dcopy.c │ │ │ ├── cblas_ddot.c │ │ │ ├── cblas_dgbmv.c │ │ │ ├── cblas_dgemm.c │ │ │ ├── cblas_dgemv.c │ │ │ ├── cblas_dger.c │ │ │ ├── cblas_dnrm2.c │ │ │ ├── cblas_drot.c │ │ │ ├── cblas_drotg.c │ │ │ ├── cblas_drotm.c │ │ │ ├── cblas_drotmg.c │ │ │ ├── cblas_dsbmv.c │ │ │ ├── cblas_dscal.c │ │ │ ├── cblas_dsdot.c │ │ │ ├── cblas_dspmv.c │ │ │ ├── cblas_dspr.c │ │ │ ├── cblas_dspr2.c │ │ │ ├── cblas_dswap.c │ │ │ ├── cblas_dsymm.c │ │ │ ├── cblas_dsymv.c │ │ │ ├── cblas_dsyr.c │ │ │ ├── cblas_dsyr2.c │ │ │ ├── cblas_dsyr2k.c │ │ │ ├── cblas_dsyrk.c │ │ │ ├── cblas_dtbmv.c │ │ │ ├── cblas_dtbsv.c │ │ │ ├── cblas_dtpmv.c │ │ │ ├── cblas_dtpsv.c │ │ │ ├── cblas_dtrmm.c │ │ │ ├── cblas_dtrmv.c │ │ │ ├── cblas_dtrsm.c │ │ │ ├── cblas_dtrsv.c │ │ │ ├── cblas_dzasum.c │ │ │ ├── cblas_dznrm2.c │ │ │ ├── cblas_f77.h │ │ │ ├── cblas_icamax.c │ │ │ ├── cblas_idamax.c │ │ │ ├── cblas_isamax.c │ │ │ ├── cblas_izamax.c │ │ │ ├── cblas_sasum.c │ │ │ ├── cblas_saxpy.c │ │ │ ├── cblas_scasum.c │ │ │ ├── cblas_scnrm2.c │ │ │ ├── cblas_scopy.c │ │ │ ├── cblas_sdot.c │ │ │ ├── cblas_sdsdot.c │ │ │ ├── cblas_sgbmv.c │ │ │ ├── cblas_sgemm.c │ │ │ ├── cblas_sgemv.c │ │ │ ├── cblas_sger.c │ │ │ ├── cblas_snrm2.c │ │ │ ├── cblas_srot.c │ │ │ ├── cblas_srotg.c │ │ │ ├── cblas_srotm.c │ │ │ ├── cblas_srotmg.c │ │ │ ├── cblas_ssbmv.c │ │ │ ├── cblas_sscal.c │ │ │ ├── cblas_sspmv.c │ │ │ ├── cblas_sspr.c │ │ │ ├── cblas_sspr2.c │ │ │ ├── cblas_sswap.c │ │ │ ├── cblas_ssymm.c │ │ │ ├── cblas_ssymv.c │ │ │ ├── cblas_ssyr.c │ │ │ ├── cblas_ssyr2.c │ │ │ ├── cblas_ssyr2k.c │ │ │ ├── cblas_ssyrk.c │ │ │ ├── cblas_stbmv.c │ │ │ ├── cblas_stbsv.c │ │ │ ├── cblas_stpmv.c │ │ │ ├── cblas_stpsv.c │ │ │ ├── cblas_strmm.c │ │ │ ├── cblas_strmv.c │ │ │ ├── cblas_strsm.c │ │ │ ├── cblas_strsv.c │ │ │ ├── cblas_xerbla.c │ │ │ ├── cblas_zaxpy.c │ │ │ ├── cblas_zcopy.c │ │ │ ├── cblas_zdotc_sub.c │ │ │ ├── cblas_zdotu_sub.c │ │ │ ├── cblas_zdscal.c │ │ │ ├── cblas_zgbmv.c │ │ │ ├── cblas_zgemm.c │ │ │ ├── cblas_zgemv.c │ │ │ ├── cblas_zgerc.c │ │ │ ├── cblas_zgeru.c │ │ │ ├── cblas_zhbmv.c │ │ │ ├── cblas_zhemm.c │ │ │ ├── cblas_zhemv.c │ │ │ ├── cblas_zher.c │ │ │ ├── cblas_zher2.c │ │ │ ├── cblas_zher2k.c │ │ │ ├── cblas_zherk.c │ │ │ ├── cblas_zhpmv.c │ │ │ ├── cblas_zhpr.c │ │ │ ├── cblas_zhpr2.c │ │ │ ├── cblas_zscal.c │ │ │ ├── cblas_zswap.c │ │ │ ├── cblas_zsymm.c │ │ │ ├── cblas_zsyr2k.c │ │ │ ├── cblas_zsyrk.c │ │ │ ├── cblas_ztbmv.c │ │ │ ├── cblas_ztbsv.c │ │ │ ├── cblas_ztpmv.c │ │ │ ├── cblas_ztpsv.c │ │ │ ├── cblas_ztrmm.c │ │ │ ├── cblas_ztrmv.c │ │ │ ├── cblas_ztrsm.c │ │ │ ├── cblas_ztrsv.c │ │ │ ├── cdotcsub.f │ │ │ ├── cdotusub.f │ │ │ ├── dasumsub.f │ │ │ ├── ddotsub.f │ │ │ ├── dnrm2sub.f │ │ │ ├── dsdotsub.f │ │ │ ├── dzasumsub.f │ │ │ ├── dznrm2sub.f │ │ │ ├── icamaxsub.f │ │ │ ├── idamaxsub.f │ │ │ ├── isamaxsub.f │ │ │ ├── izamaxsub.f │ │ │ ├── sasumsub.f │ │ │ ├── scasumsub.f │ │ │ ├── scnrm2sub.f │ │ │ ├── sdotsub.f │ │ │ ├── sdsdotsub.f │ │ │ ├── snrm2sub.f │ │ │ ├── zdotcsub.f │ │ │ └── zdotusub.f │ │ ├── libjpeg/ │ │ │ ├── README │ │ │ ├── cderror.h │ │ │ ├── cdjpeg.h │ │ │ ├── jaricom.c │ │ │ ├── jcapimin.c │ │ │ ├── jcapistd.c │ │ │ ├── jcarith.c │ │ │ ├── jccoefct.c │ │ │ ├── jccolor.c │ │ │ ├── jcdctmgr.c │ │ │ ├── jchuff.c │ │ │ ├── jcinit.c │ │ │ ├── jcmainct.c │ │ │ ├── jcmarker.c │ │ │ ├── jcmaster.c │ │ │ ├── jcomapi.c │ │ │ ├── jconfig.h │ │ │ ├── jcparam.c │ │ │ ├── jcprepct.c │ │ │ ├── jcsample.c │ │ │ ├── jctrans.c │ │ │ ├── jdapimin.c │ │ │ ├── jdapistd.c │ │ │ ├── jdarith.c │ │ │ ├── jdatadst.c │ │ │ ├── jdatasrc.c │ │ │ ├── jdcoefct.c │ │ │ ├── jdcolor.c │ │ │ ├── jdct.h │ │ │ ├── jddctmgr.c │ │ │ ├── jdhuff.c │ │ │ ├── jdinput.c │ │ │ ├── jdmainct.c │ │ │ ├── jdmarker.c │ │ │ ├── jdmaster.c │ │ │ ├── jdmerge.c │ │ │ ├── jdpostct.c │ │ │ ├── jdsample.c │ │ │ ├── jdtrans.c │ │ │ ├── jerror.c │ │ │ ├── jerror.h │ │ │ ├── jfdctflt.c │ │ │ ├── jfdctfst.c │ │ │ ├── jfdctint.c │ │ │ ├── jidctflt.c │ │ │ ├── jidctfst.c │ │ │ ├── jidctint.c │ │ │ ├── jinclude.h │ │ │ ├── jmemansi.c │ │ │ ├── jmemmgr.c │ │ │ ├── jmemname.c │ │ │ ├── jmemnobs.c │ │ │ ├── jmemsys.h │ │ │ ├── jmorecfg.h │ │ │ ├── jpegint.h │ │ │ ├── jpeglib.h │ │ │ ├── jpegtran.c │ │ │ ├── jquant1.c │ │ │ ├── jquant2.c │ │ │ ├── jutils.c │ │ │ ├── jversion.h │ │ │ ├── rdbmp.c │ │ │ ├── rdcolmap.c │ │ │ ├── rdgif.c │ │ │ ├── rdjpgcom.c │ │ │ ├── rdppm.c │ │ │ ├── rdrle.c │ │ │ ├── rdswitch.c │ │ │ ├── rdtarga.c │ │ │ ├── transupp.c │ │ │ ├── transupp.h │ │ │ ├── wrbmp.c │ │ │ ├── wrgif.c │ │ │ ├── wrjpgcom.c │ │ │ ├── wrppm.c │ │ │ ├── wrrle.c │ │ │ └── wrtarga.c │ │ ├── libpng/ │ │ │ ├── LICENSE │ │ │ ├── README │ │ │ ├── arm/ │ │ │ │ ├── arm_init.c │ │ │ │ ├── filter_neon.S │ │ │ │ ├── filter_neon_intrinsics.c │ │ │ │ └── palette_neon_intrinsics.c │ │ │ ├── png.c │ │ │ ├── png.h │ │ │ ├── pngconf.h │ │ │ ├── pngdebug.h │ │ │ ├── pngerror.c │ │ │ ├── pngget.c │ │ │ ├── pnginfo.h │ │ │ ├── pnglibconf.h │ │ │ ├── pngmem.c │ │ │ ├── pngpread.c │ │ │ ├── pngpriv.h │ │ │ ├── pngread.c │ │ │ ├── pngrio.c │ │ │ ├── pngrtran.c │ │ │ ├── pngrutil.c │ │ │ ├── pngset.c │ │ │ ├── pngstruct.h │ │ │ ├── pngtrans.c │ │ │ ├── pngwio.c │ │ │ ├── pngwrite.c │ │ │ ├── pngwtran.c │ │ │ └── pngwutil.c │ │ ├── pybind11/ │ │ │ ├── CMakeLists.txt │ │ │ ├── LICENSE │ │ │ ├── README.rst │ │ │ ├── include/ │ │ │ │ └── pybind11/ │ │ │ │ ├── attr.h │ │ │ │ ├── buffer_info.h │ │ │ │ ├── cast.h │ │ │ │ ├── chrono.h │ │ │ │ ├── common.h │ │ │ │ ├── complex.h │ │ │ │ ├── detail/ │ │ │ │ │ ├── class.h │ │ │ │ │ ├── common.h │ │ │ │ │ ├── descr.h │ │ │ │ │ ├── init.h │ │ │ │ │ ├── internals.h │ │ │ │ │ ├── type_caster_base.h │ │ │ │ │ └── typeid.h │ │ │ │ ├── eigen/ │ │ │ │ │ ├── common.h │ │ │ │ │ ├── matrix.h │ │ │ │ │ └── tensor.h │ │ │ │ ├── eigen.h │ │ │ │ ├── embed.h │ │ │ │ ├── eval.h │ │ │ │ ├── functional.h │ │ │ │ ├── gil.h │ │ │ │ ├── gil_safe_call_once.h │ │ │ │ ├── iostream.h │ │ │ │ ├── numpy.h │ │ │ │ ├── operators.h │ │ │ │ ├── options.h │ │ │ │ ├── pybind11.h │ │ │ │ ├── pytypes.h │ │ │ │ ├── stl/ │ │ │ │ │ └── filesystem.h │ │ │ │ ├── stl.h │ │ │ │ ├── stl_bind.h │ │ │ │ ├── type_caster_pyobject_ptr.h │ │ │ │ └── typing.h │ │ │ └── tools/ │ │ │ ├── FindCatch.cmake │ │ │ ├── FindEigen3.cmake │ │ │ ├── FindPythonLibsNew.cmake │ │ │ ├── JoinPaths.cmake │ │ │ ├── check-style.sh │ │ │ ├── cmake_uninstall.cmake.in │ │ │ ├── codespell_ignore_lines_from_errors.py │ │ │ ├── libsize.py │ │ │ ├── make_changelog.py │ │ │ ├── pybind11.pc.in │ │ │ ├── pybind11Common.cmake │ │ │ ├── pybind11Config.cmake.in │ │ │ ├── pybind11NewTools.cmake │ │ │ ├── pybind11Tools.cmake │ │ │ ├── pyproject.toml │ │ │ ├── setup_global.py.in │ │ │ └── setup_main.py.in │ │ └── zlib/ │ │ ├── README │ │ ├── adler32.c │ │ ├── compress.c │ │ ├── crc32.c │ │ ├── crc32.h │ │ ├── deflate.c │ │ ├── deflate.h │ │ ├── gzclose.c │ │ ├── gzguts.h │ │ ├── gzlib.c │ │ ├── gzread.c │ │ ├── gzwrite.c │ │ ├── infback.c │ │ ├── inffast.c │ │ ├── inffast.h │ │ ├── inffixed.h │ │ ├── inflate.c │ │ ├── inflate.h │ │ ├── inftrees.c │ │ ├── inftrees.h │ │ ├── trees.c │ │ ├── trees.h │ │ ├── uncompr.c │ │ ├── zconf.h │ │ ├── zlib.h │ │ ├── zutil.c │ │ └── zutil.h │ ├── fft/ │ │ ├── fft.cpp │ │ ├── fft.h │ │ ├── fft_size.h │ │ ├── fft_stl.h │ │ ├── kiss_fft.h │ │ └── mkl_fft.h │ ├── filtering/ │ │ ├── kalman_filter.cpp │ │ ├── kalman_filter.h │ │ ├── kalman_filter_abstract.h │ │ ├── rls_filter.h │ │ └── rls_filter_abstract.h │ ├── filtering.h │ ├── float_details.h │ ├── fstream │ ├── functional.h │ ├── general_hash/ │ │ ├── count_bits.h │ │ ├── count_bits_abstract.h │ │ ├── general_hash.h │ │ ├── hash.h │ │ ├── hash_abstract.h │ │ ├── murmur_hash3.h │ │ ├── murmur_hash3_abstract.h │ │ ├── random_hashing.h │ │ └── random_hashing_abstract.h │ ├── geometry/ │ │ ├── border_enumerator.h │ │ ├── border_enumerator_abstract.h │ │ ├── drectangle.h │ │ ├── drectangle_abstract.h │ │ ├── line.h │ │ ├── line_abstract.h │ │ ├── point_transforms.h │ │ ├── point_transforms_abstract.h │ │ ├── polygon.h │ │ ├── polygon_abstract.h │ │ ├── rectangle.h │ │ ├── rectangle_abstract.h │ │ ├── vector.h │ │ └── vector_abstract.h │ ├── geometry.h │ ├── global_optimization/ │ │ ├── find_max_global.h │ │ ├── find_max_global_abstract.h │ │ ├── global_function_search.cpp │ │ ├── global_function_search.h │ │ ├── global_function_search_abstract.h │ │ ├── upper_bound_function.h │ │ └── upper_bound_function_abstract.h │ ├── global_optimization.h │ ├── graph/ │ │ ├── graph_kernel_1.h │ │ └── graph_kernel_abstract.h │ ├── graph.h │ ├── graph_cuts/ │ │ ├── find_max_factor_graph_potts.h │ │ ├── find_max_factor_graph_potts_abstract.h │ │ ├── general_flow_graph.h │ │ ├── general_potts_problem.h │ │ ├── graph_labeler.h │ │ ├── graph_labeler_abstract.h │ │ ├── min_cut.h │ │ └── min_cut_abstract.h │ ├── graph_cuts.h │ ├── graph_utils/ │ │ ├── edge_list_graphs.h │ │ ├── edge_list_graphs_abstract.h │ │ ├── find_k_nearest_neighbors_lsh.h │ │ ├── find_k_nearest_neighbors_lsh_abstract.h │ │ ├── function_objects.h │ │ ├── function_objects_abstract.h │ │ ├── graph_utils.h │ │ ├── graph_utils_abstract.h │ │ ├── ordered_sample_pair.h │ │ ├── ordered_sample_pair_abstract.h │ │ ├── sample_pair.h │ │ └── sample_pair_abstract.h │ ├── graph_utils.h │ ├── graph_utils_threaded.h │ ├── gui_core/ │ │ ├── gui_core_kernel_1.cpp │ │ ├── gui_core_kernel_1.h │ │ ├── gui_core_kernel_2.cpp │ │ ├── gui_core_kernel_2.h │ │ ├── gui_core_kernel_abstract.h │ │ ├── windows.h │ │ └── xlib.h │ ├── gui_core.h │ ├── gui_widgets/ │ │ ├── base_widgets.cpp │ │ ├── base_widgets.h │ │ ├── base_widgets_abstract.h │ │ ├── canvas_drawing.cpp │ │ ├── canvas_drawing.h │ │ ├── canvas_drawing_abstract.h │ │ ├── drawable.cpp │ │ ├── drawable.h │ │ ├── drawable_abstract.h │ │ ├── fonts.cpp │ │ ├── fonts.h │ │ ├── fonts_abstract.h │ │ ├── nativefont.h │ │ ├── style.cpp │ │ ├── style.h │ │ ├── style_abstract.h │ │ ├── widgets.cpp │ │ ├── widgets.h │ │ └── widgets_abstract.h │ ├── gui_widgets.h │ ├── hash.h │ ├── hash_map/ │ │ ├── hash_map_kernel_1.h │ │ ├── hash_map_kernel_abstract.h │ │ └── hash_map_kernel_c.h │ ├── hash_map.h │ ├── hash_set/ │ │ ├── hash_set_kernel_1.h │ │ ├── hash_set_kernel_abstract.h │ │ └── hash_set_kernel_c.h │ ├── hash_set.h │ ├── hash_table/ │ │ ├── hash_table_kernel_1.h │ │ ├── hash_table_kernel_2.h │ │ ├── hash_table_kernel_abstract.h │ │ └── hash_table_kernel_c.h │ ├── hash_table.h │ ├── http_client/ │ │ ├── http_client.cpp │ │ ├── http_client.h │ │ └── http_client_abstract.h │ ├── image_io.h │ ├── image_keypoint/ │ │ ├── binned_vector_feature_image.h │ │ ├── binned_vector_feature_image_abstract.h │ │ ├── build_separable_poly_filters.h │ │ ├── draw_surf_points.h │ │ ├── draw_surf_points_abstract.h │ │ ├── fine_hog_image.h │ │ ├── fine_hog_image_abstract.h │ │ ├── hashed_feature_image.h │ │ ├── hashed_feature_image_abstract.h │ │ ├── hessian_pyramid.h │ │ ├── hessian_pyramid_abstract.h │ │ ├── hog.h │ │ ├── hog_abstract.h │ │ ├── nearest_neighbor_feature_image.h │ │ ├── nearest_neighbor_feature_image_abstract.h │ │ ├── poly_image.h │ │ ├── poly_image_abstract.h │ │ ├── surf.h │ │ └── surf_abstract.h │ ├── image_keypoint.h │ ├── image_loader/ │ │ ├── image_loader.h │ │ ├── image_loader_abstract.h │ │ ├── jpeg_loader.cpp │ │ ├── jpeg_loader.h │ │ ├── jpeg_loader_abstract.h │ │ ├── jxl_loader.cpp │ │ ├── jxl_loader.h │ │ ├── jxl_loader_abstract.h │ │ ├── load_image.h │ │ ├── load_image_abstract.h │ │ ├── png_loader.cpp │ │ ├── png_loader.h │ │ ├── png_loader_abstract.h │ │ ├── webp_loader.cpp │ │ ├── webp_loader.h │ │ └── webp_loader_abstract.h │ ├── image_processing/ │ │ ├── box_overlap_testing.h │ │ ├── box_overlap_testing_abstract.h │ │ ├── correlation_tracker.h │ │ ├── correlation_tracker_abstract.h │ │ ├── detection_template_tools.h │ │ ├── detection_template_tools_abstract.h │ │ ├── frontal_face_detector.h │ │ ├── frontal_face_detector_abstract.h │ │ ├── full_object_detection.h │ │ ├── full_object_detection_abstract.h │ │ ├── generic_image.h │ │ ├── object_detector.h │ │ ├── object_detector_abstract.h │ │ ├── remove_unobtainable_rectangles.h │ │ ├── remove_unobtainable_rectangles_abstract.h │ │ ├── render_face_detections.h │ │ ├── render_face_detections_abstract.h │ │ ├── scan_fhog_pyramid.h │ │ ├── scan_fhog_pyramid_abstract.h │ │ ├── scan_image.h │ │ ├── scan_image_abstract.h │ │ ├── scan_image_boxes.h │ │ ├── scan_image_boxes_abstract.h │ │ ├── scan_image_custom.h │ │ ├── scan_image_custom_abstract.h │ │ ├── scan_image_pyramid.h │ │ ├── scan_image_pyramid_abstract.h │ │ ├── scan_image_pyramid_tools.h │ │ ├── scan_image_pyramid_tools_abstract.h │ │ ├── setup_hashed_features.h │ │ ├── setup_hashed_features_abstract.h │ │ ├── shape_predictor.h │ │ ├── shape_predictor_abstract.h │ │ ├── shape_predictor_trainer.h │ │ └── shape_predictor_trainer_abstract.h │ ├── image_processing.h │ ├── image_saver/ │ │ ├── dng_shared.h │ │ ├── image_saver.h │ │ ├── image_saver_abstract.h │ │ ├── save_jpeg.cpp │ │ ├── save_jpeg.h │ │ ├── save_jpeg_abstract.h │ │ ├── save_jxl.cpp │ │ ├── save_jxl.h │ │ ├── save_jxl_abstract.h │ │ ├── save_png.cpp │ │ ├── save_png.h │ │ ├── save_png_abstract.h │ │ ├── save_webp.cpp │ │ ├── save_webp.h │ │ └── save_webp_abstract.h │ ├── image_transforms/ │ │ ├── assign_image.h │ │ ├── assign_image_abstract.h │ │ ├── colormaps.h │ │ ├── colormaps_abstract.h │ │ ├── draw.h │ │ ├── draw_abstract.h │ │ ├── edge_detector.h │ │ ├── edge_detector_abstract.h │ │ ├── equalize_histogram.h │ │ ├── equalize_histogram_abstract.h │ │ ├── fhog.h │ │ ├── fhog_abstract.h │ │ ├── hough_transform.h │ │ ├── hough_transform_abstract.h │ │ ├── image_pyramid.h │ │ ├── image_pyramid_abstract.h │ │ ├── integral_image.h │ │ ├── integral_image_abstract.h │ │ ├── interpolation.h │ │ ├── interpolation_abstract.h │ │ ├── label_connected_blobs.h │ │ ├── label_connected_blobs_abstract.h │ │ ├── lbp.h │ │ ├── lbp_abstract.h │ │ ├── morphological_operations.h │ │ ├── morphological_operations_abstract.h │ │ ├── random_color_transform.h │ │ ├── random_color_transform_abstract.h │ │ ├── random_cropper.h │ │ ├── random_cropper_abstract.h │ │ ├── segment_image.h │ │ ├── segment_image_abstract.h │ │ ├── spatial_filtering.h │ │ ├── spatial_filtering_abstract.h │ │ ├── thresholding.h │ │ └── thresholding_abstract.h │ ├── image_transforms.h │ ├── interfaces/ │ │ ├── cmd_line_parser_option.h │ │ ├── enumerable.h │ │ ├── map_pair.h │ │ └── remover.h │ ├── invoke.h │ ├── iomanip │ ├── iosfwd │ ├── iosockstream/ │ │ ├── iosockstream.h │ │ └── iosockstream_abstract.h │ ├── iosockstream.h │ ├── iostream │ ├── is_kind.h │ ├── istream │ ├── java/ │ │ ├── CMakeLists.txt │ │ ├── cmake_swig_jni │ │ ├── java_array.h │ │ ├── run_test.sh │ │ ├── swig_api.h │ │ └── swig_test.java │ ├── linker/ │ │ ├── linker_kernel_1.cpp │ │ ├── linker_kernel_1.h │ │ └── linker_kernel_abstract.h │ ├── linker.h │ ├── locale │ ├── logger/ │ │ ├── extra_logger_headers.cpp │ │ ├── extra_logger_headers.h │ │ ├── logger_config_file.cpp │ │ ├── logger_config_file.h │ │ ├── logger_kernel_1.cpp │ │ ├── logger_kernel_1.h │ │ └── logger_kernel_abstract.h │ ├── logger.h │ ├── lsh/ │ │ ├── create_random_projection_hash.h │ │ ├── create_random_projection_hash_abstract.h │ │ ├── hashes.h │ │ ├── hashes_abstract.h │ │ ├── projection_hash.h │ │ └── projection_hash_abstract.h │ ├── lsh.h │ ├── lz77_buffer/ │ │ ├── lz77_buffer_kernel_1.h │ │ ├── lz77_buffer_kernel_2.h │ │ ├── lz77_buffer_kernel_abstract.h │ │ └── lz77_buffer_kernel_c.h │ ├── lz77_buffer.h │ ├── lzp_buffer/ │ │ ├── lzp_buffer_kernel_1.h │ │ ├── lzp_buffer_kernel_2.h │ │ ├── lzp_buffer_kernel_abstract.h │ │ └── lzp_buffer_kernel_c.h │ ├── lzp_buffer.h │ ├── manifold_regularization/ │ │ ├── linear_manifold_regularizer.h │ │ └── linear_manifold_regularizer_abstract.h │ ├── manifold_regularization.h │ ├── map/ │ │ ├── map_kernel_1.h │ │ ├── map_kernel_abstract.h │ │ └── map_kernel_c.h │ ├── map.h │ ├── math/ │ │ ├── bessel.h │ │ ├── details/ │ │ │ └── bessel.h │ │ └── windows.h │ ├── math.h │ ├── matlab/ │ │ ├── CMakeLists.txt │ │ ├── README.txt │ │ ├── call_matlab.h │ │ ├── cmake_mex_wrapper │ │ ├── example.m │ │ ├── example_mex_callback.cpp │ │ ├── example_mex_class.cpp │ │ ├── example_mex_function.cpp │ │ ├── example_mex_struct.cpp │ │ ├── mex_wrapper.cpp │ │ ├── sig_traits.h │ │ ├── subprocess_stream.cpp │ │ └── subprocess_stream.h │ ├── matrix/ │ │ ├── cblas_constants.h │ │ ├── lapack/ │ │ │ ├── fortran_id.h │ │ │ ├── gees.h │ │ │ ├── geev.h │ │ │ ├── geqrf.h │ │ │ ├── gesdd.h │ │ │ ├── gesvd.h │ │ │ ├── getrf.h │ │ │ ├── ormqr.h │ │ │ ├── pbtrf.h │ │ │ ├── potrf.h │ │ │ ├── syev.h │ │ │ └── syevr.h │ │ ├── matrix.h │ │ ├── matrix_abstract.h │ │ ├── matrix_assign.h │ │ ├── matrix_assign_fwd.h │ │ ├── matrix_blas_bindings.h │ │ ├── matrix_cholesky.h │ │ ├── matrix_conj_trans.h │ │ ├── matrix_conv.h │ │ ├── matrix_conv_abstract.h │ │ ├── matrix_data_layout.h │ │ ├── matrix_data_layout_abstract.h │ │ ├── matrix_default_mul.h │ │ ├── matrix_eigenvalue.h │ │ ├── matrix_exp.h │ │ ├── matrix_exp_abstract.h │ │ ├── matrix_expressions.h │ │ ├── matrix_fft.h │ │ ├── matrix_fft_abstract.h │ │ ├── matrix_fwd.h │ │ ├── matrix_generic_image.h │ │ ├── matrix_la.h │ │ ├── matrix_la_abstract.h │ │ ├── matrix_lu.h │ │ ├── matrix_mat.h │ │ ├── matrix_mat_abstract.h │ │ ├── matrix_math_functions.h │ │ ├── matrix_math_functions_abstract.h │ │ ├── matrix_op.h │ │ ├── matrix_qr.h │ │ ├── matrix_read_from_istream.h │ │ ├── matrix_subexp.h │ │ ├── matrix_subexp_abstract.h │ │ ├── matrix_trsm.h │ │ ├── matrix_utilities.h │ │ ├── matrix_utilities_abstract.h │ │ ├── symmetric_matrix_cache.h │ │ └── symmetric_matrix_cache_abstract.h │ ├── matrix.h │ ├── md5/ │ │ ├── md5_kernel_1.cpp │ │ ├── md5_kernel_1.h │ │ └── md5_kernel_abstract.h │ ├── md5.h │ ├── media/ │ │ ├── ffmpeg_demuxer.h │ │ ├── ffmpeg_details.h │ │ ├── ffmpeg_muxer.h │ │ ├── ffmpeg_utils.h │ │ └── sink.h │ ├── media.h │ ├── member_function_pointer/ │ │ ├── make_mfp.h │ │ ├── make_mfp_abstract.h │ │ ├── member_function_pointer_kernel_1.h │ │ └── member_function_pointer_kernel_abstract.h │ ├── member_function_pointer.h │ ├── memory_manager/ │ │ ├── memory_manager_kernel_1.h │ │ ├── memory_manager_kernel_2.h │ │ ├── memory_manager_kernel_3.h │ │ └── memory_manager_kernel_abstract.h │ ├── memory_manager.h │ ├── memory_manager_global/ │ │ ├── memory_manager_global_kernel_1.h │ │ └── memory_manager_global_kernel_abstract.h │ ├── memory_manager_global.h │ ├── memory_manager_stateless/ │ │ ├── memory_manager_stateless_kernel_1.h │ │ ├── memory_manager_stateless_kernel_2.h │ │ └── memory_manager_stateless_kernel_abstract.h │ ├── memory_manager_stateless.h │ ├── metaprogramming.h │ ├── misc_api/ │ │ ├── misc_api_kernel_1.cpp │ │ ├── misc_api_kernel_1.h │ │ ├── misc_api_kernel_2.cpp │ │ ├── misc_api_kernel_2.h │ │ ├── misc_api_kernel_abstract.h │ │ ├── misc_api_shared.h │ │ ├── posix.h │ │ └── windows.h │ ├── misc_api.h │ ├── mlp/ │ │ ├── mlp_kernel_1.h │ │ ├── mlp_kernel_abstract.h │ │ └── mlp_kernel_c.h │ ├── mlp.h │ ├── noncopyable.h │ ├── numeric_constants.h │ ├── numerical_integration/ │ │ ├── integrate_function_adapt_simpson.h │ │ └── integrate_function_adapt_simpson_abstract.h │ ├── numerical_integration.h │ ├── opencv/ │ │ ├── cv_image.h │ │ ├── cv_image_abstract.h │ │ ├── to_open_cv.h │ │ └── to_open_cv_abstract.h │ ├── opencv.h │ ├── optimization/ │ │ ├── elastic_net.h │ │ ├── elastic_net_abstract.h │ │ ├── find_max_factor_graph_nmplp.h │ │ ├── find_max_factor_graph_nmplp_abstract.h │ │ ├── find_max_factor_graph_viterbi.h │ │ ├── find_max_factor_graph_viterbi_abstract.h │ │ ├── find_max_parse_cky.h │ │ ├── find_max_parse_cky_abstract.h │ │ ├── find_optimal_parameters.h │ │ ├── find_optimal_parameters_abstract.h │ │ ├── isotonic_regression.h │ │ ├── isotonic_regression_abstract.h │ │ ├── max_cost_assignment.h │ │ ├── max_cost_assignment_abstract.h │ │ ├── max_sum_submatrix.h │ │ ├── max_sum_submatrix_abstract.h │ │ ├── optimization.h │ │ ├── optimization_abstract.h │ │ ├── optimization_bobyqa.h │ │ ├── optimization_bobyqa_abstract.h │ │ ├── optimization_least_squares.h │ │ ├── optimization_least_squares_abstract.h │ │ ├── optimization_line_search.h │ │ ├── optimization_line_search_abstract.h │ │ ├── optimization_oca.h │ │ ├── optimization_oca_abstract.h │ │ ├── optimization_search_strategies.h │ │ ├── optimization_search_strategies_abstract.h │ │ ├── optimization_solve_qp2_using_smo.h │ │ ├── optimization_solve_qp2_using_smo_abstract.h │ │ ├── optimization_solve_qp3_using_smo.h │ │ ├── optimization_solve_qp3_using_smo_abstract.h │ │ ├── optimization_solve_qp_using_smo.h │ │ ├── optimization_solve_qp_using_smo_abstract.h │ │ ├── optimization_stop_strategies.h │ │ ├── optimization_stop_strategies_abstract.h │ │ ├── optimization_trust_region.h │ │ └── optimization_trust_region_abstract.h │ ├── optimization.h │ ├── optional.h │ ├── ostream │ ├── overloaded.h │ ├── pipe/ │ │ ├── pipe_kernel_1.h │ │ └── pipe_kernel_abstract.h │ ├── pipe.h │ ├── pixel.h │ ├── platform.h │ ├── python/ │ │ ├── numpy_image.h │ │ ├── pyassert.h │ │ ├── pybind_utils.h │ │ └── serialize_pickle.h │ ├── python.h │ ├── quantum_computing/ │ │ ├── quantum_computing.h │ │ └── quantum_computing_abstract.h │ ├── quantum_computing.h │ ├── queue/ │ │ ├── queue_kernel_1.h │ │ ├── queue_kernel_2.h │ │ ├── queue_kernel_abstract.h │ │ ├── queue_kernel_c.h │ │ ├── queue_sort_1.h │ │ └── queue_sort_abstract.h │ ├── queue.h │ ├── rand/ │ │ ├── mersenne_twister.h │ │ ├── rand_kernel_1.h │ │ └── rand_kernel_abstract.h │ ├── rand.h │ ├── random_forest/ │ │ ├── random_forest_regression.h │ │ └── random_forest_regression_abstract.h │ ├── random_forest.h │ ├── ref.h │ ├── reference_counter/ │ │ ├── reference_counter_kernel_1.h │ │ └── reference_counter_kernel_abstract.h │ ├── reference_counter.h │ ├── revision.h.in │ ├── scope.h │ ├── sequence/ │ │ ├── sequence_compare_1.h │ │ ├── sequence_compare_abstract.h │ │ ├── sequence_kernel_1.h │ │ ├── sequence_kernel_2.h │ │ ├── sequence_kernel_abstract.h │ │ ├── sequence_kernel_c.h │ │ ├── sequence_sort_1.h │ │ ├── sequence_sort_2.h │ │ └── sequence_sort_abstract.h │ ├── sequence.h │ ├── serialize.h │ ├── server/ │ │ ├── server_http.cpp │ │ ├── server_http.h │ │ ├── server_http_abstract.h │ │ ├── server_iostream.cpp │ │ ├── server_iostream.h │ │ ├── server_iostream_abstract.h │ │ ├── server_kernel.cpp │ │ ├── server_kernel.h │ │ └── server_kernel_abstract.h │ ├── server.h │ ├── set/ │ │ ├── set_compare_1.h │ │ ├── set_compare_abstract.h │ │ ├── set_kernel_1.h │ │ ├── set_kernel_abstract.h │ │ └── set_kernel_c.h │ ├── set.h │ ├── set_utils/ │ │ ├── set_utils.h │ │ └── set_utils_abstract.h │ ├── set_utils.h │ ├── simd/ │ │ ├── simd4f.h │ │ ├── simd4i.h │ │ ├── simd8f.h │ │ ├── simd8i.h │ │ └── simd_check.h │ ├── simd.h │ ├── sliding_buffer/ │ │ ├── circular_buffer.h │ │ ├── circular_buffer_abstract.h │ │ ├── sliding_buffer_kernel_1.h │ │ ├── sliding_buffer_kernel_abstract.h │ │ └── sliding_buffer_kernel_c.h │ ├── sliding_buffer.h │ ├── smart_pointers/ │ │ ├── scoped_ptr.h │ │ ├── shared_ptr.h │ │ ├── shared_ptr_abstract.h │ │ ├── shared_ptr_thread_safe.h │ │ ├── shared_ptr_thread_safe_abstract.h │ │ ├── weak_ptr.h │ │ └── weak_ptr_abstract.h │ ├── smart_pointers.h │ ├── smart_pointers_thread_safe.h │ ├── sockets/ │ │ ├── posix.h │ │ ├── sockets_extensions.cpp │ │ ├── sockets_extensions.h │ │ ├── sockets_extensions_abstract.h │ │ ├── sockets_kernel_1.cpp │ │ ├── sockets_kernel_1.h │ │ ├── sockets_kernel_2.cpp │ │ ├── sockets_kernel_2.h │ │ ├── sockets_kernel_abstract.h │ │ └── windows.h │ ├── sockets.h │ ├── sockstreambuf/ │ │ ├── sockstreambuf.cpp │ │ ├── sockstreambuf.h │ │ ├── sockstreambuf_abstract.h │ │ ├── sockstreambuf_unbuffered.cpp │ │ └── sockstreambuf_unbuffered.h │ ├── sockstreambuf.h │ ├── sort.h │ ├── sparse_vector.h │ ├── sqlite/ │ │ ├── sqlite.h │ │ ├── sqlite_abstract.h │ │ ├── sqlite_tools.h │ │ └── sqlite_tools_abstract.h │ ├── sqlite.h │ ├── sstream │ ├── stack/ │ │ ├── stack_kernel_1.h │ │ ├── stack_kernel_abstract.h │ │ └── stack_kernel_c.h │ ├── stack.h │ ├── stack_trace.cpp │ ├── stack_trace.h │ ├── static_map/ │ │ ├── static_map_kernel_1.h │ │ ├── static_map_kernel_abstract.h │ │ └── static_map_kernel_c.h │ ├── static_map.h │ ├── static_set/ │ │ ├── static_set_compare_1.h │ │ ├── static_set_compare_abstract.h │ │ ├── static_set_kernel_1.h │ │ ├── static_set_kernel_abstract.h │ │ └── static_set_kernel_c.h │ ├── static_set.h │ ├── statistics/ │ │ ├── average_precision.h │ │ ├── average_precision_abstract.h │ │ ├── cca.h │ │ ├── cca_abstract.h │ │ ├── dpca.h │ │ ├── dpca_abstract.h │ │ ├── image_feature_sampling.h │ │ ├── image_feature_sampling_abstract.h │ │ ├── lda.h │ │ ├── lda_abstract.h │ │ ├── random_subset_selector.h │ │ ├── random_subset_selector_abstract.h │ │ ├── running_gradient.h │ │ ├── running_gradient_abstract.h │ │ ├── sammon.h │ │ ├── sammon_abstract.h │ │ ├── statistics.h │ │ ├── statistics_abstract.h │ │ ├── vector_normalizer_frobmetric.h │ │ └── vector_normalizer_frobmetric_abstract.h │ ├── statistics.h │ ├── std_allocator.h │ ├── stl_checked/ │ │ ├── std_vector_c.h │ │ └── std_vector_c_abstract.h │ ├── stl_checked.h │ ├── string/ │ │ ├── cassert │ │ ├── iomanip │ │ ├── iosfwd │ │ ├── iostream │ │ ├── locale │ │ ├── string.h │ │ └── string_abstract.h │ ├── string.h │ ├── svm/ │ │ ├── active_learning.h │ │ ├── active_learning_abstract.h │ │ ├── assignment_function.h │ │ ├── assignment_function_abstract.h │ │ ├── auto.cpp │ │ ├── auto.h │ │ ├── auto_abstract.h │ │ ├── cross_validate_assignment_trainer.h │ │ ├── cross_validate_assignment_trainer_abstract.h │ │ ├── cross_validate_graph_labeling_trainer.h │ │ ├── cross_validate_graph_labeling_trainer_abstract.h │ │ ├── cross_validate_multiclass_trainer.h │ │ ├── cross_validate_multiclass_trainer_abstract.h │ │ ├── cross_validate_object_detection_trainer.h │ │ ├── cross_validate_object_detection_trainer_abstract.h │ │ ├── cross_validate_regression_trainer.h │ │ ├── cross_validate_regression_trainer_abstract.h │ │ ├── cross_validate_sequence_labeler.h │ │ ├── cross_validate_sequence_labeler_abstract.h │ │ ├── cross_validate_sequence_segmenter.h │ │ ├── cross_validate_sequence_segmenter_abstract.h │ │ ├── cross_validate_track_association_trainer.h │ │ ├── cross_validate_track_association_trainer_abstract.h │ │ ├── empirical_kernel_map.h │ │ ├── empirical_kernel_map_abstract.h │ │ ├── feature_ranking.h │ │ ├── feature_ranking_abstract.h │ │ ├── function.h │ │ ├── function_abstract.h │ │ ├── kcentroid.h │ │ ├── kcentroid_abstract.h │ │ ├── kcentroid_overloads.h │ │ ├── kernel.h │ │ ├── kernel_abstract.h │ │ ├── kernel_matrix.h │ │ ├── kernel_matrix_abstract.h │ │ ├── kkmeans.h │ │ ├── kkmeans_abstract.h │ │ ├── krls.h │ │ ├── krls_abstract.h │ │ ├── krr_trainer.h │ │ ├── krr_trainer_abstract.h │ │ ├── linearly_independent_subset_finder.h │ │ ├── linearly_independent_subset_finder_abstract.h │ │ ├── multiclass_tools.h │ │ ├── multiclass_tools_abstract.h │ │ ├── null_df.h │ │ ├── null_trainer.h │ │ ├── null_trainer_abstract.h │ │ ├── num_nonnegative_weights.h │ │ ├── one_vs_all_decision_function.h │ │ ├── one_vs_all_decision_function_abstract.h │ │ ├── one_vs_all_trainer.h │ │ ├── one_vs_all_trainer_abstract.h │ │ ├── one_vs_one_decision_function.h │ │ ├── one_vs_one_decision_function_abstract.h │ │ ├── one_vs_one_trainer.h │ │ ├── one_vs_one_trainer_abstract.h │ │ ├── pegasos.h │ │ ├── pegasos_abstract.h │ │ ├── ranking_tools.h │ │ ├── ranking_tools_abstract.h │ │ ├── rbf_network.h │ │ ├── rbf_network_abstract.h │ │ ├── reduced.h │ │ ├── reduced_abstract.h │ │ ├── rls.h │ │ ├── rls_abstract.h │ │ ├── roc_trainer.h │ │ ├── roc_trainer_abstract.h │ │ ├── rr_trainer.h │ │ ├── rr_trainer_abstract.h │ │ ├── rvm.h │ │ ├── rvm_abstract.h │ │ ├── sequence_labeler.h │ │ ├── sequence_labeler_abstract.h │ │ ├── sequence_segmenter.h │ │ ├── sequence_segmenter_abstract.h │ │ ├── simplify_linear_decision_function.h │ │ ├── simplify_linear_decision_function_abstract.h │ │ ├── sort_basis_vectors.h │ │ ├── sort_basis_vectors_abstract.h │ │ ├── sparse_kernel.h │ │ ├── sparse_kernel_abstract.h │ │ ├── sparse_vector.h │ │ ├── sparse_vector_abstract.h │ │ ├── structural_assignment_trainer.h │ │ ├── structural_assignment_trainer_abstract.h │ │ ├── structural_graph_labeling_trainer.h │ │ ├── structural_graph_labeling_trainer_abstract.h │ │ ├── structural_object_detection_trainer.h │ │ ├── structural_object_detection_trainer_abstract.h │ │ ├── structural_sequence_labeling_trainer.h │ │ ├── structural_sequence_labeling_trainer_abstract.h │ │ ├── structural_sequence_segmentation_trainer.h │ │ ├── structural_sequence_segmentation_trainer_abstract.h │ │ ├── structural_svm_assignment_problem.h │ │ ├── structural_svm_assignment_problem_abstract.h │ │ ├── structural_svm_distributed.h │ │ ├── structural_svm_distributed_abstract.h │ │ ├── structural_svm_graph_labeling_problem.h │ │ ├── structural_svm_graph_labeling_problem_abstract.h │ │ ├── structural_svm_object_detection_problem.h │ │ ├── structural_svm_object_detection_problem_abstract.h │ │ ├── structural_svm_problem.h │ │ ├── structural_svm_problem_abstract.h │ │ ├── structural_svm_problem_threaded.h │ │ ├── structural_svm_problem_threaded_abstract.h │ │ ├── structural_svm_sequence_labeling_problem.h │ │ ├── structural_svm_sequence_labeling_problem_abstract.h │ │ ├── structural_track_association_trainer.h │ │ ├── structural_track_association_trainer_abstract.h │ │ ├── svm.h │ │ ├── svm_abstract.h │ │ ├── svm_c_ekm_trainer.h │ │ ├── svm_c_ekm_trainer_abstract.h │ │ ├── svm_c_linear_dcd_trainer.h │ │ ├── svm_c_linear_dcd_trainer_abstract.h │ │ ├── svm_c_linear_trainer.h │ │ ├── svm_c_linear_trainer_abstract.h │ │ ├── svm_c_trainer.h │ │ ├── svm_c_trainer_abstract.h │ │ ├── svm_multiclass_linear_trainer.h │ │ ├── svm_multiclass_linear_trainer_abstract.h │ │ ├── svm_nu_trainer.h │ │ ├── svm_nu_trainer_abstract.h │ │ ├── svm_one_class_trainer.h │ │ ├── svm_one_class_trainer_abstract.h │ │ ├── svm_rank_trainer.h │ │ ├── svm_rank_trainer_abstract.h │ │ ├── svm_threaded.h │ │ ├── svm_threaded_abstract.h │ │ ├── svr_linear_trainer.h │ │ ├── svr_linear_trainer_abstract.h │ │ ├── svr_trainer.h │ │ ├── svr_trainer_abstract.h │ │ ├── track_association_function.h │ │ └── track_association_function_abstract.h │ ├── svm.h │ ├── svm_threaded.h │ ├── sync_extension/ │ │ ├── sync_extension_kernel_1.h │ │ └── sync_extension_kernel_abstract.h │ ├── sync_extension.h │ ├── test/ │ │ ├── CMakeLists.txt │ │ ├── WINDOWS_build_and_run_all_unit_tests.bat │ │ ├── active_learning.cpp │ │ ├── any.cpp │ │ ├── any_function.cpp │ │ ├── array.cpp │ │ ├── array2d.cpp │ │ ├── assignment_learning.cpp │ │ ├── base64.cpp │ │ ├── bayes_nets.cpp │ │ ├── bigint.cpp │ │ ├── binary_search_tree.h │ │ ├── binary_search_tree_kernel_1a.cpp │ │ ├── binary_search_tree_kernel_2a.cpp │ │ ├── binary_search_tree_mm1.cpp │ │ ├── binary_search_tree_mm2.cpp │ │ ├── blas_bindings/ │ │ │ ├── CMakeLists.txt │ │ │ ├── blas_bindings_dot.cpp │ │ │ ├── blas_bindings_gemm.cpp │ │ │ ├── blas_bindings_gemv.cpp │ │ │ ├── blas_bindings_ger.cpp │ │ │ ├── blas_bindings_scal_axpy.cpp │ │ │ └── vector.cpp │ │ ├── bridge.cpp │ │ ├── bsp.cpp │ │ ├── byte_orderer.cpp │ │ ├── cca.cpp │ │ ├── checkerboard.h │ │ ├── clustering.cpp │ │ ├── cmd_line_parser.cpp │ │ ├── cmd_line_parser.h │ │ ├── cmd_line_parser_wchar_t.cpp │ │ ├── compress_stream.cpp │ │ ├── conditioning_class.cpp │ │ ├── conditioning_class.h │ │ ├── conditioning_class_c.cpp │ │ ├── config_reader.cpp │ │ ├── constexpr_if.cpp │ │ ├── correlation_tracker.cpp │ │ ├── crc32.cpp │ │ ├── create_iris_datafile.cpp │ │ ├── create_iris_datafile.h │ │ ├── cublas.cpp │ │ ├── data_io.cpp │ │ ├── directed_graph.cpp │ │ ├── discriminant_pca.cpp │ │ ├── disjoint_subsets.cpp │ │ ├── disjoint_subsets_sized.cpp │ │ ├── dnn.cpp │ │ ├── ekm_and_lisf.cpp │ │ ├── elastic_net.cpp │ │ ├── empirical_kernel_map.cpp │ │ ├── entropy_coder.cpp │ │ ├── entropy_encoder_model.cpp │ │ ├── example.cpp │ │ ├── example_args.cpp │ │ ├── examples/ │ │ │ └── CMakeLists.txt │ │ ├── face.cpp │ │ ├── ffmpeg.cpp │ │ ├── ffmpeg_data/ │ │ │ ├── 116-288045-0000.flac │ │ │ ├── 116-288045-0001.m4a │ │ │ ├── LICENSE.TXT │ │ │ ├── MOT17-13-SDP-raw.h265 │ │ │ ├── MOT20-08-raw_shorter.h264 │ │ │ └── details.cfg │ │ ├── fft.cpp │ │ ├── fftr_good_data.h │ │ ├── fhog.cpp │ │ ├── filtering.cpp │ │ ├── find_max_factor_graph_nmplp.cpp │ │ ├── find_max_factor_graph_viterbi.cpp │ │ ├── find_optimal_parameters.cpp │ │ ├── geometry.cpp │ │ ├── global_optimization.cpp │ │ ├── graph.cpp │ │ ├── graph_cuts.cpp │ │ ├── graph_labeler.cpp │ │ ├── gui/ │ │ │ ├── CMakeLists.txt │ │ │ └── main.cpp │ │ ├── hash.cpp │ │ ├── hash_map.cpp │ │ ├── hash_set.cpp │ │ ├── hash_table.cpp │ │ ├── hog_image.cpp │ │ ├── image.cpp │ │ ├── invoke.cpp │ │ ├── iosockstream.cpp │ │ ├── is_same_object.cpp │ │ ├── isotonic_regression.cpp │ │ ├── kcentroid.cpp │ │ ├── kernel_matrix.cpp │ │ ├── kmeans.cpp │ │ ├── learning_to_track.cpp │ │ ├── least_squares.cpp │ │ ├── linear_manifold_regularizer.cpp │ │ ├── lspi.cpp │ │ ├── lz77_buffer.cpp │ │ ├── main.cpp │ │ ├── makefile │ │ ├── map.cpp │ │ ├── math.cpp │ │ ├── matrix.cpp │ │ ├── matrix2.cpp │ │ ├── matrix3.cpp │ │ ├── matrix4.cpp │ │ ├── matrix_chol.cpp │ │ ├── matrix_eig.cpp │ │ ├── matrix_lu.cpp │ │ ├── matrix_qr.cpp │ │ ├── max_cost_assignment.cpp │ │ ├── max_sum_submatrix.cpp │ │ ├── md5.cpp │ │ ├── member_function_pointer.cpp │ │ ├── metaprogramming.cpp │ │ ├── mpc.cpp │ │ ├── multithreaded_object.cpp │ │ ├── numerical_integration.cpp │ │ ├── object_detector.cpp │ │ ├── oca.cpp │ │ ├── one_vs_all_trainer.cpp │ │ ├── one_vs_one_trainer.cpp │ │ ├── opt_qp_solver.cpp │ │ ├── optimization.cpp │ │ ├── optimization_test_functions.cpp │ │ ├── optimization_test_functions.h │ │ ├── optional.cpp │ │ ├── parallel_for.cpp │ │ ├── parse.cpp │ │ ├── pipe.cpp │ │ ├── pixel.cpp │ │ ├── probabilistic.cpp │ │ ├── pyramid_down.cpp │ │ ├── queue.cpp │ │ ├── rand.cpp │ │ ├── random_forest.cpp │ │ ├── ranking.cpp │ │ ├── read_write_mutex.cpp │ │ ├── reference_counter.cpp │ │ ├── rls.cpp │ │ ├── sammon.cpp │ │ ├── scan_image.cpp │ │ ├── scope.cpp │ │ ├── sequence.cpp │ │ ├── sequence_labeler.cpp │ │ ├── sequence_segmenter.cpp │ │ ├── serialize.cpp │ │ ├── set.cpp │ │ ├── sldf.cpp │ │ ├── sliding_buffer.cpp │ │ ├── smart_pointers.cpp │ │ ├── sockets.cpp │ │ ├── sockets2.cpp │ │ ├── sockstreambuf.cpp │ │ ├── sparse_vector.cpp │ │ ├── stack.cpp │ │ ├── static_map.cpp │ │ ├── static_set.cpp │ │ ├── statistics.cpp │ │ ├── std_vector_c.cpp │ │ ├── stft_good_data.h │ │ ├── string.cpp │ │ ├── svm.cpp │ │ ├── svm_c_linear.cpp │ │ ├── svm_c_linear_dcd.cpp │ │ ├── svm_multiclass_linear.cpp │ │ ├── svm_struct.cpp │ │ ├── svr_linear_trainer.cpp │ │ ├── symmetric_matrix_cache.cpp │ │ ├── te.cpp │ │ ├── tester.cpp │ │ ├── tester.h │ │ ├── thread_pool.cpp │ │ ├── threads.cpp │ │ ├── timer.cpp │ │ ├── tokenizer.cpp │ │ ├── tools/ │ │ │ └── CMakeLists.txt │ │ ├── trust_region.cpp │ │ ├── tuple.cpp │ │ ├── type_safe_union.cpp │ │ └── vectorstream.cpp │ ├── test_for_odr_violations.cpp │ ├── test_for_odr_violations.h │ ├── threads/ │ │ ├── async.cpp │ │ ├── async.h │ │ ├── async_abstract.h │ │ ├── auto_mutex_extension.h │ │ ├── auto_mutex_extension_abstract.h │ │ ├── auto_unlock_extension.h │ │ ├── auto_unlock_extension_abstract.h │ │ ├── create_new_thread_extension.h │ │ ├── create_new_thread_extension_abstract.h │ │ ├── multithreaded_object_extension.cpp │ │ ├── multithreaded_object_extension.h │ │ ├── multithreaded_object_extension_abstract.h │ │ ├── parallel_for_extension.h │ │ ├── parallel_for_extension_abstract.h │ │ ├── posix.h │ │ ├── read_write_mutex_extension.h │ │ ├── read_write_mutex_extension_abstract.h │ │ ├── rmutex_extension.h │ │ ├── rmutex_extension_abstract.h │ │ ├── rsignaler_extension.h │ │ ├── rsignaler_extension_abstract.h │ │ ├── thread_function_extension.h │ │ ├── thread_function_extension_abstract.h │ │ ├── thread_pool_extension.cpp │ │ ├── thread_pool_extension.h │ │ ├── thread_pool_extension_abstract.h │ │ ├── thread_specific_data_extension.h │ │ ├── thread_specific_data_extension_abstract.h │ │ ├── threaded_object_extension.cpp │ │ ├── threaded_object_extension.h │ │ ├── threaded_object_extension_abstract.h │ │ ├── threads_kernel.h │ │ ├── threads_kernel_1.cpp │ │ ├── threads_kernel_1.h │ │ ├── threads_kernel_2.cpp │ │ ├── threads_kernel_2.h │ │ ├── threads_kernel_abstract.h │ │ ├── threads_kernel_shared.cpp │ │ ├── threads_kernel_shared.h │ │ └── windows.h │ ├── threads.h │ ├── time_this.h │ ├── timeout/ │ │ ├── timeout.h │ │ └── timeout_abstract.h │ ├── timeout.h │ ├── timer/ │ │ ├── timer.cpp │ │ ├── timer.h │ │ ├── timer_abstract.h │ │ └── timer_heavy.h │ ├── timer.h │ ├── timing.h │ ├── tokenizer/ │ │ ├── bpe_tokenizer.h │ │ ├── bpe_tokenizer_abstract.h │ │ ├── tokenizer_kernel_1.cpp │ │ ├── tokenizer_kernel_1.h │ │ ├── tokenizer_kernel_abstract.h │ │ └── tokenizer_kernel_c.h │ ├── tokenizer.h │ ├── tuple/ │ │ ├── tuple.h │ │ └── tuple_abstract.h │ ├── tuple.h │ ├── type_safe_union/ │ │ ├── type_safe_union_kernel.h │ │ └── type_safe_union_kernel_abstract.h │ ├── type_safe_union.h │ ├── type_traits.h │ ├── uintn.h │ ├── unicode/ │ │ ├── unicode.cpp │ │ ├── unicode.h │ │ └── unicode_abstract.h │ ├── unicode.h │ ├── unordered_pair.h │ ├── utility.h │ ├── vectorstream/ │ │ ├── unserialize.h │ │ ├── unserialize_abstract.h │ │ ├── vectorstream.h │ │ └── vectorstream_abstract.h │ ├── vectorstream.h │ ├── windows_magic.h │ ├── xml_parser/ │ │ ├── xml_parser_kernel_1.h │ │ ├── xml_parser_kernel_abstract.h │ │ └── xml_parser_kernel_interfaces.h │ └── xml_parser.h ├── docs/ │ ├── .logger_revnum │ ├── README.txt │ ├── bash_helper_functions │ ├── docs/ │ │ ├── algorithms.xml │ │ ├── api.xml │ │ ├── bayes.xml │ │ ├── books.xml │ │ ├── change_log.xml │ │ ├── compile.xml │ │ ├── compression.xml │ │ ├── containers.xml │ │ ├── dlib.css │ │ ├── dlib.js │ │ ├── enable_if.html │ │ ├── faq.xml │ │ ├── find_max_global_example.webm │ │ ├── graph_tools.xml │ │ ├── howto_contribute.xml │ │ ├── imaging.xml │ │ ├── index.xml │ │ ├── intro.xml │ │ ├── kernel_1a.txt │ │ ├── kernel_1a.xml │ │ ├── kernel_1b.txt │ │ ├── kernel_1b.xml │ │ ├── kernel_1c.txt │ │ ├── kernel_1c.xml │ │ ├── kernel_1da.txt │ │ ├── kernel_1da.xml │ │ ├── kernel_1db.txt │ │ ├── kernel_1db.xml │ │ ├── kernel_1ea.txt │ │ ├── kernel_1ea.xml │ │ ├── kernel_1eb.txt │ │ ├── kernel_1eb.xml │ │ ├── kernel_1ec.txt │ │ ├── kernel_1ec.xml │ │ ├── kernel_2a.txt │ │ ├── kernel_2a.xml │ │ ├── kernel_3a.txt │ │ ├── kernel_3a.xml │ │ ├── kernel_3b.txt │ │ ├── kernel_3b.xml │ │ ├── license.xml │ │ ├── linear_algebra.xml │ │ ├── main_menu.xml │ │ ├── metaprogramming.xml │ │ ├── ml.xml │ │ ├── ml_guide.dia │ │ ├── network.xml │ │ ├── old_release_notes.xml │ │ ├── optimization.xml │ │ ├── other.xml │ │ ├── parsing.xml │ │ ├── python/ │ │ │ ├── conf.py │ │ │ ├── generate_dlib_listing.py │ │ │ └── index.rst │ │ ├── release_notes.xml │ │ ├── stylesheet.xsl │ │ ├── term_index.xml │ │ └── watershed.webm │ ├── makedocs │ ├── makerel │ ├── testenv │ └── testenv_rel ├── examples/ │ ├── 3d_point_cloud_ex.cpp │ ├── CMakeLists.txt │ ├── LICENSE_FOR_EXAMPLE_PROGRAMS.txt │ ├── assignment_learning_ex.cpp │ ├── bayes_net_ex.cpp │ ├── bayes_net_from_disk_ex.cpp │ ├── bayes_net_gui_ex.cpp │ ├── bridge_ex.cpp │ ├── bsp_ex.cpp │ ├── compress_stream_ex.cpp │ ├── config.txt │ ├── config_reader_ex.cpp │ ├── custom_trainer_ex.cpp │ ├── dir_nav_ex.cpp │ ├── dnn_dcgan_train_ex.cpp │ ├── dnn_face_recognition_ex.cpp │ ├── dnn_imagenet_ex.cpp │ ├── dnn_imagenet_train_ex.cpp │ ├── dnn_inception_ex.cpp │ ├── dnn_instance_segmentation_ex.cpp │ ├── dnn_instance_segmentation_ex.h │ ├── dnn_instance_segmentation_train_ex.cpp │ ├── dnn_introduction2_ex.cpp │ ├── dnn_introduction3_ex.cpp │ ├── dnn_introduction_ex.cpp │ ├── dnn_metric_learning_ex.cpp │ ├── dnn_metric_learning_on_images_ex.cpp │ ├── dnn_mmod_dog_hipsterizer.cpp │ ├── dnn_mmod_ex.cpp │ ├── dnn_mmod_face_detection_ex.cpp │ ├── dnn_mmod_find_cars2_ex.cpp │ ├── dnn_mmod_find_cars_ex.cpp │ ├── dnn_mmod_train_find_cars_ex.cpp │ ├── dnn_self_supervised_learning_ex.cpp │ ├── dnn_semantic_segmentation_ex.cpp │ ├── dnn_semantic_segmentation_ex.h │ ├── dnn_semantic_segmentation_train_ex.cpp │ ├── dnn_yolo_train_ex.cpp │ ├── empirical_kernel_map_ex.cpp │ ├── face_detection_ex.cpp │ ├── face_landmark_detection_ex.cpp │ ├── faces/ │ │ ├── image_metadata_stylesheet.xsl │ │ ├── testing.xml │ │ ├── testing_with_face_landmarks.xml │ │ ├── training.xml │ │ └── training_with_face_landmarks.xml │ ├── ffmpeg_file_to_speaker_ex.cpp │ ├── ffmpeg_info_ex.cpp │ ├── ffmpeg_microphone_to_file_ex.cpp │ ├── ffmpeg_rtsp_ex.cpp │ ├── ffmpeg_screen_grab_ex.cpp │ ├── ffmpeg_video_decoding2_ex.cpp │ ├── ffmpeg_video_decoding_ex.cpp │ ├── ffmpeg_video_demuxing2_ex.cpp │ ├── ffmpeg_video_demuxing_ex.cpp │ ├── ffmpeg_video_encoding_ex.cpp │ ├── ffmpeg_video_muxing_ex.cpp │ ├── ffmpeg_webcam_face_pose_ex.cpp │ ├── fhog_ex.cpp │ ├── fhog_object_detector_ex.cpp │ ├── file_to_code_ex.cpp │ ├── graph_labeling_ex.cpp │ ├── gui_api_ex.cpp │ ├── hough_transform_ex.cpp │ ├── image_ex.cpp │ ├── integrate_function_adapt_simp_ex.cpp │ ├── iosockstream_ex.cpp │ ├── kcentroid_ex.cpp │ ├── kkmeans_ex.cpp │ ├── krls_ex.cpp │ ├── krls_filter_ex.cpp │ ├── krr_classification_ex.cpp │ ├── krr_regression_ex.cpp │ ├── learning_to_track_ex.cpp │ ├── least_squares_ex.cpp │ ├── linear_manifold_regularizer_ex.cpp │ ├── logger_custom_output_ex.cpp │ ├── logger_ex.cpp │ ├── logger_ex_2.cpp │ ├── matrix_ex.cpp │ ├── matrix_expressions_ex.cpp │ ├── max_cost_assignment_ex.cpp │ ├── member_function_pointer_ex.cpp │ ├── mlp_ex.cpp │ ├── model_selection_ex.cpp │ ├── mpc_ex.cpp │ ├── multiclass_classification_ex.cpp │ ├── multithreaded_object_ex.cpp │ ├── object_detector_advanced_ex.cpp │ ├── object_detector_ex.cpp │ ├── one_class_classifiers_ex.cpp │ ├── optimization_ex.cpp │ ├── parallel_for_ex.cpp │ ├── pascal_voc_2012.h │ ├── pipe_ex.cpp │ ├── pipe_ex_2.cpp │ ├── quantum_computing_ex.cpp │ ├── queue_ex.cpp │ ├── random_cropper_ex.cpp │ ├── rank_features_ex.cpp │ ├── resnet.h │ ├── running_stats_ex.cpp │ ├── rvm_ex.cpp │ ├── rvm_regression_ex.cpp │ ├── sequence_labeler_ex.cpp │ ├── sequence_segmenter_ex.cpp │ ├── server_http_ex.cpp │ ├── server_iostream_ex.cpp │ ├── slm_advanced_train_ex.cpp │ ├── slm_basic_train_ex.cpp │ ├── slm_data.h │ ├── slm_defs.h │ ├── sockets_ex.cpp │ ├── sockstreambuf_ex.cpp │ ├── sqlite_ex.cpp │ ├── std_allocator_ex.cpp │ ├── surf_ex.cpp │ ├── svm_c_ex.cpp │ ├── svm_ex.cpp │ ├── svm_pegasos_ex.cpp │ ├── svm_rank_ex.cpp │ ├── svm_sparse_ex.cpp │ ├── svm_struct_ex.cpp │ ├── svr_ex.cpp │ ├── thread_function_ex.cpp │ ├── thread_pool_ex.cpp │ ├── threaded_object_ex.cpp │ ├── threads_ex.cpp │ ├── timer_ex.cpp │ ├── train_object_detector.cpp │ ├── train_shape_predictor_ex.cpp │ ├── using_custom_kernels_ex.cpp │ ├── video_frames/ │ │ └── license.txt │ ├── video_tracking_ex.cpp │ ├── webcam_face_pose_ex.cpp │ └── xml_parser_ex.cpp ├── pyproject.toml ├── python_examples/ │ ├── LICENSE_FOR_EXAMPLE_PROGRAMS.txt │ ├── cnn_face_detector.py │ ├── correlation_tracker.py │ ├── face_alignment.py │ ├── face_clustering.py │ ├── face_detector.py │ ├── face_jitter.py │ ├── face_landmark_detection.py │ ├── face_recognition.py │ ├── find_candidate_object_locations.py │ ├── global_optimization.py │ ├── max_cost_assignment.py │ ├── opencv_webcam_face_detection.py │ ├── requirements.txt │ ├── sequence_segmenter.py │ ├── svm_binary_classifier.py │ ├── svm_rank.py │ ├── svm_struct.py │ ├── train_object_detector.py │ └── train_shape_predictor.py ├── setup.py └── tools/ ├── archive/ │ ├── CMakeLists.txt │ └── train_face_5point_model.cpp ├── convert_dlib_nets_to_caffe/ │ ├── CMakeLists.txt │ ├── main.cpp │ └── running_a_dlib_model_with_caffe_example.py ├── htmlify/ │ ├── CMakeLists.txt │ ├── htmlify.cpp │ ├── to_xml.cpp │ ├── to_xml.h │ └── to_xml_example/ │ ├── example.xml │ ├── output.xml │ ├── stylesheet.xsl │ └── test.cpp ├── imglab/ │ ├── CMakeLists.txt │ ├── README.txt │ ├── convert_imglab_paths_to_relative │ ├── copy_imglab_dataset │ └── src/ │ ├── cluster.cpp │ ├── cluster.h │ ├── common.cpp │ ├── common.h │ ├── convert_idl.cpp │ ├── convert_idl.h │ ├── convert_pascal_v1.cpp │ ├── convert_pascal_v1.h │ ├── convert_pascal_xml.cpp │ ├── convert_pascal_xml.h │ ├── flip_dataset.cpp │ ├── flip_dataset.h │ ├── main.cpp │ ├── metadata_editor.cpp │ └── metadata_editor.h ├── python/ │ ├── CMakeLists.txt │ ├── dlib/ │ │ └── __init__.py.in │ ├── src/ │ │ ├── basic.cpp │ │ ├── cca.cpp │ │ ├── cnn_face_detector.cpp │ │ ├── conversion.h │ │ ├── correlation_tracker.cpp │ │ ├── decision_functions.cpp │ │ ├── dlib.cpp │ │ ├── face_recognition.cpp │ │ ├── global_optimization.cpp │ │ ├── gui.cpp │ │ ├── image.cpp │ │ ├── image2.cpp │ │ ├── image3.cpp │ │ ├── image4.cpp │ │ ├── image_dataset_metadata.cpp │ │ ├── indexing.h │ │ ├── line.cpp │ │ ├── matrix.cpp │ │ ├── numpy_returns.cpp │ │ ├── object_detection.cpp │ │ ├── opaque_types.h │ │ ├── other.cpp │ │ ├── rectangles.cpp │ │ ├── sequence_segmenter.cpp │ │ ├── serialize_object_detector.h │ │ ├── shape_predictor.cpp │ │ ├── shape_predictor.h │ │ ├── simple_object_detector.h │ │ ├── simple_object_detector_py.h │ │ ├── svm_c_trainer.cpp │ │ ├── svm_rank_trainer.cpp │ │ ├── svm_struct.cpp │ │ ├── testing_results.h │ │ └── vector.cpp │ └── test/ │ ├── .gitignore │ ├── generate_numpy_returns_test_data.py │ ├── shape.pkl │ ├── test_array.py │ ├── test_chinese_whispers.py │ ├── test_global_optimization.py │ ├── test_matrix.py │ ├── test_numpy_returns.py │ ├── test_point.py │ ├── test_range.py │ ├── test_rgb_pixel.py │ ├── test_sparse_vector.py │ ├── test_svm_c_trainer.py │ ├── test_vector.py │ └── utils.py └── visual_studio_natvis/ ├── README.txt └── dlib.natvis