преобразование кода Matlab в ошибку готовности кода c

Я хочу преобразовать свой код Matlab в код C. Но когда я пытаюсь это сделать, в отчете о готовности кода появляется много предупреждений. Хотя я разобрался со многими проблемами, но все еще есть некоторые функции, которые не поддерживаются, и мне нужна альтернатива.

Подскажите, пожалуйста, альтернативные коды ошибок.

Позвольте мне быть более конкретным: это строки функции, которые вызывают некоторые проблемы:

  fn = fieldnames(pars); %current parametres fieldnames
  main_fn = {'algorithm'};

  pm_fn =     

     {'pm_tau','pm_window','pm_keypoints','pm_harris_prctile','pm_searchrange'};

     m_fn =    
    {'window','range','tau','epsilon','growing','init_seeds_accept',
 'seeds_accept','searchrange','searchrangeV',
   'max_candidates','vis_step','mu','csbeta','csalgorithm','grow_version'};

Теперь в этом говорится, что генерация кода поддерживает только операции с ячейками для varargin и vararout

скриншот ошибкивведите здесь описание изображения


person ninja    schedule 13.06.2015    source источник
comment
вы обречены использовать C или C++ тоже подойдет?   -  person Micka    schedule 13.06.2015
comment
@Micka, ты можешь писать на c++, я конвертирую в c   -  person ninja    schedule 13.06.2015
comment
это не то, что я имел в виду, синтаксис opencv С++ довольно близок к Matlab, что облегчит вам задачу.   -  person Micka    schedule 13.06.2015
comment
@Мика, хорошо, сделай это   -  person ninja    schedule 13.06.2015
comment
@Micka, еще одна вещь, мне нужно спросить вас, как нам преобразовать изображение в двойное. Как изменить его тип? в c/c++, пожалуйста, скажите мне в обоих   -  person ninja    schedule 13.06.2015
comment
преобразовать тип изображения с помощью cv::Mat::convertto(mat, destinationType)(docs.opencv.org/modules/core/doc/), это С++. Не нашел вариант C в документации. Вы действительно должны придерживаться C?   -  person LSA    schedule 13.06.2015
comment
двойной тип CV_64F для матов   -  person Micka    schedule 13.06.2015
comment
А, спасибо, забыл упомянуть :-). Что такое SEEDs, данные для графика? Взгляните на stackoverflow.com/questions/ 9250079/   -  person LSA    schedule 13.06.2015
comment
Семена @LSA являются исходными семенами корреспонденции, пожалуйста, посмотрите на этот документ, я реализую это в режиме реального времени, и да, я должен придерживаться c [ссылка] (cftp://cmp.felk.cvut.cz/pub/cmp/articles/cech /Cech-BenCOS-CVPR-2007.pdf)   -  person ninja    schedule 13.06.2015
comment
В худшем случае просто создайте новую матрицу нового типа и скопируйте значения; Я просто пролистал бумагу. Вы хотите напечатать изображение несоответствия? Тогда просто назначьте каждому пикселю значение цвета в зависимости от расстояния между значениями x.   -  person LSA    schedule 13.06.2015
comment
@Micka, можешь пожалуйста ответить на этот новый отредактированный вопрос   -  person ninja    schedule 25.06.2015
comment
@LSA, пожалуйста, не могли бы вы ответить на этот новый отредактированный вопрос   -  person ninja    schedule 25.06.2015
comment
Что ж, вы опубликовали только фрагменты из примера кода Matlab, где находится ваш код, и, пожалуйста, скопируйте и вставьте сообщение об ошибке, которое вы получаете при компиляции/запуске.   -  person LSA    schedule 29.06.2015
comment
@LSA Я просто спрашиваю, как написать структуру в Matlab по-другому, чтобы она преобразовывалась в код c. Поскольку c не поддерживает динамические структуры, и я везде получаю одно и то же сообщение об ошибке: генерация кода поддерживает только операции с ячейками для varargin и vararout , везде, где я использую фигурные скобки   -  person ninja    schedule 30.06.2015
comment
@LSA, надеюсь, теперь ты ясно видишь, в чем ошибка   -  person ninja    schedule 30.06.2015
comment
Ах, извините, теперь я вас понимаю. Вы видели эту ссылку?   -  person LSA    schedule 30.06.2015
comment
@LSA я видел это, но проблема в том, что я хочу запустить свой код в opencv, поэтому я сначала преобразую его в c с помощью кодера, а затем помещу полученную библиотеку в Visual Studio, а затем запрограммирую ее. Я буду использовать ее в робототехнике. поэтому я могу использовать Matlab на любой встроенной плате, такой как малиновый пирог. Из-за оперативной памяти и других проблем, поэтому я не могу вызвать какую-либо функцию из Matlab, единственный оставшийся вариант - полностью преобразовать код в c   -  person ninja    schedule 30.06.2015
comment
Может быть, это вопрос и ответ может немного помочь вам с вашими массивами ячеек.   -  person Hoki    schedule 01.08.2015