Страница 1 из 1

Labview, Matlab и потерянные миллисекунды

Добавлено: 02 ноя 2017, 16:25
barcklay
Имеется Matlab скрипт, который выполняет развёртку кольцевого изображения и приведение этой развёртки к форме прямоугольника.
Время исполнения этого скрипта непосредственно в матлабе - около 35 миллисекунд.
При интеграции данного скрипта в ВП Labview, время исполения этого скрипта - около 100 миллисекунд
Исполнение происходит на CPU
Вопросы:
На что тратятся дополнительные миллисекунды при исполнении ВП Labview?
Какие пути устранения использования этих дополнительных миллисекунд?

Re: Labview, Matlab и потерянные миллисекунды

Добавлено: 02 ноя 2017, 16:29
Artem.spb
скрипт выполняется не в :labview: , а в матлабе. На вызов которого и тратится время.

Re: Labview, Matlab и потерянные миллисекунды

Добавлено: 02 ноя 2017, 16:34
barcklay
Предполагал это.
Вариант ускорения - переписать скрипт в Labview?
ещё есть какие либо варианты?

Re: Labview, Matlab и потерянные миллисекунды

Добавлено: 02 ноя 2017, 17:55
dadreamer
barcklay писал(а):При интеграции данного скрипта в ВП Labview
А как интегрируете? Если через MS Node, то узел сам по себе довольно тормозной, время тратится на парсинг, преобразование типов, передачу в движок и обратно, плюс компиляция. Действительно, лучше попробовать переписать код в :labview: . Formula Node тоже лучше не использовать, раз время так важно.
barcklay писал(а):скрипт, который выполняет развёртку кольцевого изображения и приведение этой развёртки к форме прямоугольника
Когда-то давно приходилось выполнять задачу обратного преобразования. У меня получалось тоже где-то 100 мс, даже в чистом :labview: . Пробовал оформлять в виде библиотеки на C, особого выигрыша не получалось. Не знаю, может, код был не самым оптимальным, но тогда и опыта было меньше. В итоге нашёл функцию в Halcon, которая делала преобразование за несколько миллисекунд. На этом и остановился.

Re: Labview, Matlab и потерянные миллисекунды

Добавлено: 02 ноя 2017, 18:10
barcklay
Да, через MS Node

Halcon использовали как самостоятельное приложение? не интегрировали в LV код?

Re: Labview, Matlab и потерянные миллисекунды

Добавлено: 02 ноя 2017, 18:18
dadreamer
barcklay писал(а):Halcon использовали как самостоятельное приложение? не интегрировали в LV код?
Интегрировал. Сначала через ActiveX, позже уже через .NET узлы. Ну, можно и в HDevelop проверить для начала. Но там немного совсем операторов, так что код небольшой должен быть.
Думаю, функция вот эта должна подойти: http://www.mvtec.com/doc/halcon/13/en/p ... e_ext.html
Если есть пример-картинка с кругом, скиньте, я покажу, что получается.

Re: Labview, Matlab и потерянные миллисекунды

Добавлено: 02 ноя 2017, 18:39
barcklay
Ответил в личку