|
6#
楼主 |
发表于 2021-2-23 15:57:02
|
只看该作者
对齐了,但是在对齐过程中,会报错,并且有可能导致崩溃;
我的做法是 用其它的函数加载图片(RGB的格式)得到一块Buffer,自己构造
rockx_image_t input_image;
input_image.data = image->buf;
input_image.pixel_format = (rockx_pixel_format)image->emFmt;
input_image.width = image->width;
input_image.height = image->height;
然后进行align操作,
rockx_image_t image_align;
memset(&image_align, 0, sizeof(rockx_image_t));
rockx_rect_t in_box;
in_box.left = objPos.left;
in_box.top = objPos.top;
in_box.right = objPos.right;
in_box.bottom = objPos.bottom;
rockx_ret_t retAlign = rockx_face_align((rockx_handle_t)m_hFaceLandMark5,
&input_image,
&in_box,
NULL,
&image_align);
......
......
rockx_image_release(&image_align);
这样的话,在处理某些图片的时候会导致崩溃:
begin get feature of 高佳佳.jpg image width 585 height 735
obj left 0 top 199 width 351 height 336
D RKNNAPI: __can_use_fixed_point: use_fixed_point = 1.
free(): invalid next size (normal)
Aborted
上面就是在获取这个图片的特征值,图片大小是585*735,检测到其中人脸的区域是(0, 199)到(351, 535),进行align处理时,崩溃。
请问时我的用法有问题吗? |
|