Undefined function or variable 'maskApiMex'.Error in MaskApi.decode (line 84)问题解决

在使用openpose训练自己的数据之前需要进行数据处理,在运行一个genCOCOMask.m文件时,产生如下错误:

>> genCOCOMask
1/ 21634
2/ 21634
3/ 21634
4/ 21634
5/ 21634
6/ 21634
6/ 21634
Undefined function or variable 'maskApiMex'.

Error in MaskApi.decode (line 84)
      masks = maskApiMex( 'decode', Rs );

Error in genCOCOMask (line 48)
                    mask_crowd = logical(MaskApi.decode( coco_kpt(i).annorect(p).segmentation ));

 

解决方法:

(1)转到自己的cocoAPI目录下,

例如我的cocoAPI在名为coco/ 的目录下:

Undefined function or variable 'maskApiMex'.Error in MaskApi.decode (line 84)问题解决

然后:

(2)cd MatlabAPI  ,转到MatlabAPI目录下

(3) 输入matlab  ,进入matlab控制台程序

(4)在matlab中输入:

mex('CFLAGS=\$CFLAGS -Wall -std=c99','-largeArrayDims','private/maskApiMex.c','../common/maskApi.c','-I../common/','-outdir','private');

如果显示如下图所示:

Undefined function or variable 'maskApiMex'.Error in MaskApi.decode (line 84)问题解决

则配置成功,再次运行genCOCOMask.m则程序正常运行。