2015-01-21 3 views
1

Я свежее к Matlab. Я работаю над vision.CascadeObjectDetector на Mat-lab и дважды используется для поиска двух разных объектов (отдельно обученных), например, E и K из видео. bbox и bbox2 - соответствующие ROI. часть кода приведен нижеКак указать ROI слева направо в MAtlab

while ~isDone(videoFileReader) 
videoFrame=step(videoFileReader); 
bbox=step(letterDetector_E,videoFrame); 
bbox2=step(letterDetector_K,videoFrame); 
C = vertcat(bbox,bbox2); 
videoOut=insertObjectAnnotation(videoFrame, 'rectangle', C, 'E&K'); 
step(videoPlayer, videoOut); 
end 

Я хочу взять каждый ROI (как BBox и bbox2 рассматривает вместе) по одному из двух слева направо, сверху вниз, как чтение страницы. Как мне это сделать.

ответ

1

Я не уверен, какой формат bbox здесь, но при условии, что это вектор bbox = [xUpperLeft, yUpperLeft, width, height], вам просто нужно отсортировать по два столбца подряд. Для этого вы можете использовать sortrows:

sortrows(C, [1 2]); 

Сортирует строки C сначала xUpperLeft (первая колонка), а затем yUpperLeft (второй колонке). См. Также аналогичный вопрос here.

+0

ya. Формат bbox такой же, как и у вас ... спасибо ... Позвольте мне проверить, работает ли это для моего проекта :-) – SREE

+0

@SREE Если этот ответ работает на вас, вы можете принять его :) – buzjwa

Смежные вопросы