Я изучаю использование нескольких камер для приложений компьютерного зрения. Например. В каждом углу комнаты есть камера, и задача — слежка за людьми. Я хотел бы смоделировать такую среду. Что мне нужно это:
У кого-нибудь есть опыт с этим? Я проверил блендер (http://www.blender.org), но в настоящее время я ищу более быстрое / простое в использовании решение.
Не могли бы вы дать мне руководство по аналогичному программному обеспечению / библиотекам (предпочтительно C ++ или MATLAB).
Вы можете найти ILNumerics идеально подходит для ваших потребностей:
Если я правильно понял! Вы хотите смоделировать подачу камеры с нескольких камер в разных положениях среды.
Я не знаю ни о каких сайтах или готовом готовом решении, но вот как бы я поступил:
Приобрести трехмерные облака точек в динамической среде (см. Наборы данных Kinect 3D Slam) или создайте свой собственный с Kinect (надеясь, что у вас есть Xbox Kinect с вами).
После того, как вы получили кинетические облака точек в формате облака точек PCL, вы можете смоделировать подачу видео с различных камер.
Подойдет такой псевдокод:
#include <pcl_headers>
//this method just discards all 3d depth information and fills the pixels with rgb values
//this is like a snapshot in the pcd_viewer of pcl(point cloud library)
makeImage(cloud,image){};
pcd <- read the point clouds
camera_positions[] <- {new CameraPosition(affine transform)...}
for(camera_position in camera_positions)
pcl::transformPointCloud(pcd,
cloud_out,
camera_position.getAffineTransform()
);
//Now cloud_out contains point cloud in different viewpoint
image <- new Image();
make_image(cloud_out,image);
saveImage(image);
pcl предоставляет функцию для преобразования облака точек с учетом соответствующих параметров ПКЛ :: trasformPointCloud ()
Если вы не хотите использовать pcl, вы можете проверить эта почта а затем с оставшимися шагами.