Я хочу отобразить изображение через мой проектор через MATlab. Проецируемое изображение должно быть полноразмерным без каких-либо ручек фигур (строка меню, серый элемент, который охватывает фигуру и т. Д.).
Подобно обычной презентации, когда проектор проецирует весь слайд или изображение, я хочу сделать то же самое, используя MATlab в качестве моей платформы. Есть мысли или идеи? Можем ли мы получить доступ к проектору с помощью MATlab? Моими первыми мыслями были отправка данных на соответствующий IP-адрес принтера, но это не сработало: /
Если вы знаете соответствующую команду или метод C ++ для этого, предложите ссылку или библиотеку, чтобы я мог попробовать импортировать ее на мою платформу MATlab.
Причина для этого: Калибровка проектора и камеры для фотометрической коррекции выходного сигнала моего проектора.
Это нетривиально. Для Windows вы можете использовать WindowAPI отправка в MATLAB File Exchange. С WindowAPI
функция установлена вы можете сделать
WindowAPI(FigH, 'Position', 'full');
Для Mac и Linux вы можете использовать обертки вокруг OpenGL для создания низкоуровневых графиков, но вы не можете использовать стандартные окна рисунков MATLAB. Хорошая реализация PsychToolbox.
Предполагая, что ваш проектор настроен как второй дисплей, вы можете сделать что-то очень простое. Получить информацию о положении монитора и установить рамку рисунка в соответствии с размером монитора
// plot figure however you want
monitorFrames = get(0,'MonitorPositions');
secondMonitor = monitorFrames(2,:);
secondMonitor(3) = secondMonitor(3)-monitorFrames(1,3);
set(gcf,'Position',secondMonitor);
Это поместит окно рисунка на второй монитор и займет весь экран.
Затем вы можете использовать это для выполнения любой необходимой вам калибровки и при необходимости сдвигать это окно.
НОТА:
Я ни в коем случае не говорю, что это идеальное решение. Это быстро и грязно, и не будет использовать какие-либо внешние библиотеки.
ОБНОВИТЬ
Если вышеприведенное решение не соответствует вашим конкретным потребностям, вы всегда можете сохранить график в виде изображения, а затем создать скрипт MATLAB, вызвать сценарий c ++, который открывает изображение и выводит его на весь экран.