Как я могу сократить время с сегментации изображения с помощью раздвижных окон?

Я работаю над изображением размером H x W. Теперь я использую Bag из визуальных слов, чтобы я мог назначить каждый пиксель изображения различным словам. Для каждого пикселя я извлекаю патч и присваиваю его ближайшему слову, используя сумму разностей квадратов. Это код:

`  for (int r = 0; r < image.rows ; r+= 1)
{
for (int c = 0; c < image.cols ; c+= 1)
{
int rn = r;
int cn = c;
int minc = min(cn + window_size, image.cols);
int minr = min(rn + window_size, image.rows);
cv::Mat pixel = temp_m(cv::Range(rn, minr),cv::Range(cn,minc));
BOW(cv::Range(rn,minr),cv::Range(cn,minc))=correlation(pixel,listofwords); //returns the index of the closest word
}
}

`
Я уже нашел слова, которым я могу выделить свои пиксели, используя k означает алгоритм кластеризации. Однако, когда я работаю по пикселям, мой алгоритм занимает много времени. Следовательно, я хочу использовать подход скользящего окна. Но если я использую скользящие окна, некоторые пиксели будут перекрываться друг с другом. Как я могу извлечь эти пиксели и назначить их соседу, чтобы у меня был индекс слова, к которому он ближе всего? Не могли бы вы также предложить мне другие методы, с помощью которых я могу увеличить скорость моего алгоритма.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]