codegen: use -package option error?

4 views (last 30 days)
When I use the codegen command line for code generation, I get the following error unexpectedly, which I guess is that the matlab built-in function detectORBFeatures calls the OpenCV source code???
inputsArgs = {'-config','cfg',...
'myEntryFcn','-args',{in1,in2},...
'-package','src.zip',...
'-report'};
codegen(inputsArgs{:});
report following bug:
The following files have the same file name which cannot be packaged together in a flat hierarchy:
C:\Program Files\MATLAB\R2022b\toolbox\vision\builtins\src\ocvcg\opencv\include\opencv2\stitching\detail\warpers.hpp
C:\Program Files\MATLAB\R2022b\toolbox\vision\builtins\src\ocvcg\opencv\include\\opencv2\stitching\warpers.hpp
Use help codegen for more information on using this command.
Error using codegen
Run in R2022b.
  12 Comments
Ujwal Durgam
Ujwal Durgam on 25 Jul 2023
-package runs packNGo on the generated code to package all files in a flat hierarchy. In this case, the opencv headers cannot be packed in flat hierarchy as clearly mentioned in the error message.
For this case you need to manually run packNGo with packType='hierarchical'.
cui,xingxing
cui,xingxing on 25 Jul 2023
Edited: cui,xingxing on 25 Jul 2023
Thank your for your reply, I know what you mean, now I'm having a different problem, may I ask if you clicked on the link above?
The large number of dependent header and source files is indeed a tricky issue

Sign in to comment.

Accepted Answer

cui,xingxing
cui,xingxing on 28 Oct 2022
Edited: cui,xingxing on 28 Oct 2022
The correct approach is for the codegen command to not use the -package option.Then,this bug is easily fixed by manually copying the separate C code.
Also, detectORBFeatures does call a third-party OPENCV library, which is not clearly stated in the official documentation function on the C/C++ generated support description(Extended Capabilities section(bottom page)).Which, in terms of the generated code, is simply a wrapping of the ORB feature detection to fit the C code generation.

More Answers (0)

Products


Release

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!