64位系统应该用libasmlibrary64. so
Yao Wei
From Android's Gmail
--
---
You received this message because you are subscribed to the Google Groups "ASMLibrary" group.
To unsubscribe from this group and stop receiving emails from it, send an email to asmlibrary+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
$ ./fit -m my68-1d.amf -h haarcascade_frontalface_alt2.xml -i 9.jpg
/**************************************************************/
/* ASMLibrary -- A compact SDK for face alignment */
/* Copyright (c) 2008-2011 by Yao Wei, all rights reserved. */
/* Contact: nju...@gmail.com */
/**************************************************************/
Reading active shape models from file my68-1d.amf ...(Done)
ASM model file read
time
cost: 24.27 millisec
Opencv haar-like file read
time
cost: 18.02 millisec
Segmentation fault (core dumped)
(gdb) backtrace#0 0x00007f852eca0b51 in cv::_InputArray::type(int) const () from ./libasmlibrary64.so#1 0x00007f852b629315 in cv::Canny(cv::_InputArray const&, cv::_OutputArray const&, double, double, int, bool) () from /usr/local/lib/libopencv_imgproc.so.3.0#2 0x00007f852b62bd3c in cvCanny () from /usr/local/lib/libopencv_imgproc.so.3.0#3 0x00007f852e94339c in cvHaarDetectObjectsForROC(void const*, CvHaarClassifierCascade*, CvMemStorage*, std::vector<int, std::allocator<int> >&, std::vector<double, std::allocator<double> >&, double, int, int, CvSize, CvSize, bool) () from /usr/local/lib/libopencv_objdetect.so.3.0#4 0x00007f852e943d2b in cvHaarDetectObjects () from /usr/local/lib/libopencv_objdetect.so.3.0#5 0x000000000040228d in detect_all_faces (Shapes=Shapes@entry=0x7fff5ee888d8, n_shapes=@0x7fff5ee888cc: 32645, image=0x1a7b810) at ../src/vjfacedetect.cpp:72#6 0x0000000000401bed in main (argc=7, argv=<optimized out>) at ../src/demo_fit.cpp:236
(gdb) backtrace full #0 0x00007f852eca0b51 in cv::_InputArray::type(int) const () from ./libasmlibrary64.soNo symbol table info available.#1 0x00007f852b629315 in cv::Canny(cv::_InputArray const&, cv::_OutputArray const&, double, double, int, bool) () from /usr/local/lib/libopencv_imgproc.so.3.0No symbol table info available.#2 0x00007f852b62bd3c in cvCanny () from /usr/local/lib/libopencv_imgproc.so.3.0No symbol table info available.#3 0x00007f852e94339c in cvHaarDetectObjectsForROC(void const*, CvHaarClassifierCascade*, CvMemStorage*, std::vector<int, std::allocator<int> >&, std::vector<double, std::allocator<double> >&, double, int, int, CvSize, CvSize, bool) () from /usr/local/lib/libopencv_objdetect.so.3.0No symbol table info available.#4 0x00007f852e943d2b in cvHaarDetectObjects () from /usr/local/lib/libopencv_objdetect.so.3.0No symbol table info available.#5 0x000000000040228d in detect_all_faces (Shapes=Shapes@entry=0x7fff5ee888d8, n_shapes=@0x7fff5ee888cc: 32645, image=0x1a7b810) at ../src/vjfacedetect.cpp:72 pWork = 0x1a33ad0 pFaces = <optimized out>#6 0x0000000000401bed in main (argc=7, argv=<optimized out>) at ../src/demo_fit.cpp:236 image = 0x1a7b810 nFaces = 32645 shapes = 0x0 detshapes = 0x0 flag = <optimized out> t = <optimized out> fit_asm = {m_model = {m_M = 0x197a9a0, m_B = 0x197b010, m_V = 0x197ae70, m_SM = 0x1984120, m_SSD = 0x19842c0, m_type = PROFILE_1D, { lbp_tdm = 0x1984450, classical_tdm = 0x1984450}, m_asm_meanshape = {m_vPoints = 0x197a760, m_nPoints = 68}, m_nPoints = 68, m_nWidth = 17, m_nLevels = 4, m_nModes = 34, m_dReferenceFaceWidth = 167.935, m_bInterpolate = false, m_dMeanCost = 1149.04, m_dVarCost = 210.226, m_CBackproject = 0x1a32470, m_CBs = 0x1a32940, m_dist = 0x1a32230, m_profile = 0x193bca0, m_search_shape = { m_vPoints = 0x1a32d00, m_nPoints = 68}, m_temp_shape = {m_vPoints = 0x1a32ad0, m_nPoints = 68}}, m_edge_start = 0x1a33440, m_edge_end = 0x1a33160, m_nEdge = 180, m__VJdetavshape = {m_vPoints = 0x1a32f30, m_nPoints = 68}, m_param = {left = 1, right = 13}, m_flag = false, m_dReferenceFaceWidth = 6.953222278231463e-310, __lastframe = 0x0, __pyrimg1 = 0x0, __pyrimg2 = 0x0, __features1 = 0x197a520, __features2 = 0x1a33720, __found_feature = 0x1a33950 "", __feature_error = 0x1a339a0} model_name = <optimized out> cascade_name = <optimized out> n_iteration = <optimized out> t = <optimized out> filename = <optimized out> use_camera = <optimized out> image_or_video = <optimized out> camera_idx = <optimized out> i = <optimized out>
这个是人脸检测部分出现问题,相关代码都在vjfacedetect. cpp中,不涉及到libasmlibrary。可以进一步调试。
Yao Wei
From Android's Gmail