powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Быстрое сравнение матриц
14 сообщений из 14, страница 1 из 1
Быстрое сравнение матриц
    #34169977
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть целочисленный двумерный вектор X[12,8]. Его надо сравнить с 224 такими-же векторами (шаблонами) и найти идентичный.

Пытался оценить среднее количество операций сравнения... (типа X[i,j]==Y[i,j]) ммм... выходит что-то около 10 000.

Как-бы уменьшить количество сравнений?

C уважением
Lord Mayton
...
Рейтинг: 0 / 0
Быстрое сравнение матриц
    #34170024
Фотография Timm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Идентичный вектор - один или их много?
Насколько сильно отличаются матрицы?
Они приходят извне или строятся самостоятельно?

Вопрос скорее в Программирование
...
Рейтинг: 0 / 0
Быстрое сравнение матриц
    #34170058
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TimmИдентичный вектор - один или их много?
Насколько сильно отличаются матрицы?
Они приходят извне или строятся самостоятельно?

Вопрос скорее в Программирование

Он один.

Нет. Не сильно. Я-бы сказал, что шаблоны очень похожи друг на друга.

Они приходят из внешнего файла.
...
Рейтинг: 0 / 0
Быстрое сравнение матриц
    #34170113
Фотография Timm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton TimmИдентичный вектор - один или их много?
Насколько сильно отличаются матрицы?
Они приходят извне или строятся самостоятельно?

Вопрос скорее в Программирование

Он один.

Нет. Не сильно. Я-бы сказал, что шаблоны очень похожи друг на друга.

Они приходят из внешнего файла.
Гы. проверил сколько работает полный перебор.
16 мсек.
Че парица?
...
Рейтинг: 0 / 0
Быстрое сравнение матриц
    #34170143
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Timm
Гы. проверил сколько работает полный перебор.
16 мсек.
Че парица?
16 мсек - это что. Время сравнения одной матрицы с 224 другими?
...
Рейтинг: 0 / 0
Быстрое сравнение матриц
    #34170203
Фотография Timm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton Timm
Гы. проверил сколько работает полный перебор.
16 мсек.
Че парица?
16 мсек - это что. Время сравнения одной матрицы с 224 другими?
да.
...
Рейтинг: 0 / 0
Быстрое сравнение матриц
    #34170331
Зашедший
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TimmГы. проверил сколько работает полный перебор.
16 мсек.
Че парица?
Нееет, под это дело надо явно добавить новый элемент языка, Matrix, поддерживающий сравнение столбцов в нескольких потоках, использующий хэширование элементов при загрузке, желательно - в нулевом кольце защиты. Чтобы работало быстрее. А, да - еще оно должно использовать прямое чтение из файла путем обращения к контроллеру винчестера.
А пока такого чуда в Яве нету - это плохой язык :)
...
Рейтинг: 0 / 0
Быстрое сравнение матриц
    #34170340
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Timm16 мсек - это что. Время сравнения одной матрицы с 224 другими?
Это число умножится на 2000, и мы получим время кодирования одного кадра. Это порядка 3 секунд. В каждом видеоролике - где-то 15 мин = 900 сек. = 13 500 кадров (при скорости записи презентации 15 fps). Тоесть для кодирования целого ролика мне понадобится 13 500 * 3 = 40 500 секунд = приблизительно 11 часов.

Многовато получается. Хотелось-бы побыстрее.
...
Рейтинг: 0 / 0
Быстрое сравнение матриц
    #34170415
Фотография Timm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton Timm16 мсек - это что. Время сравнения одной матрицы с 224 другими?
Это число умножится на 2000, и мы получим время кодирования одного кадра. Это порядка 3 секунд. В каждом видеоролике - где-то 15 мин = 900 сек. = 13 500 кадров (при скорости записи презентации 15 fps). Тоесть для кодирования целого ролика мне понадобится 13 500 * 3 = 40 500 секунд = приблизительно 11 часов.

Многовато получается. Хотелось-бы побыстрее.
2000 итераций - 547 мсек.

Ява по моему не совсем (даже совсем не) подходит для написания видео кодеков. Такие вещи серьезно оптимизируют, используя ассемблер.
...
Рейтинг: 0 / 0
Быстрое сравнение матриц
    #34170436
Зашедший
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton Timm16 мсек - это что. Время сравнения одной матрицы с 224 другими?
Это число умножится на 2000, и мы получим время кодирования одного кадра. Это порядка 3 секунд. В каждом видеоролике - где-то 15 мин = 900 сек. = 13 500 кадров (при скорости записи презентации 15 fps). Тоесть для кодирования целого ролика мне понадобится 13 500 * 3 = 40 500 секунд = приблизительно 11 часов.

Многовато получается. Хотелось-бы побыстрее.
Эээ... видеокодер на Яве?! Интересное требование у вашего заказчика.
Один из вариантов я уже предложил - реализовать некую хэш-функцию, которая будет вычисляться при загрузке вектора. И сравнивать по хэшу.
...
Рейтинг: 0 / 0
Быстрое сравнение матриц
    #34170443
Зашедший
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TimmЯва по моему не совсем (даже совсем не) подходит для написания видео кодеков. Такие вещи серьезно оптимизируют, используя ассемблер.
Подпишусь :)
...
Рейтинг: 0 / 0
Быстрое сравнение матриц
    #34170459
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Timm mayton[quot Timm]16 мсек - это что. Время сравнения одной матрицы с 224 другими?
Ява по моему не совсем (даже совсем не) подходит для написания видео кодеков. Такие вещи серьезно оптимизируют, используя ассемблер.
Это не настолько значимая задача, чтобы я писал ее на ассемблере. Просто возникла проблема быстрого создания компактных презентаций для обучения студентов. И я ей занимаюсь.

Зашедший
...сравнение столбцов в нескольких потоках, использующий хэширование элементов при загрузке, желательно - в нулевом кольце защиты. Чтобы работало быстрее. А, да - еще оно должно использовать прямое чтение из файла путем обращения к контроллеру винчестера.

Ну.. это вы загнули. Особенно про нулевое кольцо защиты. И файлы мне напрямую читать не надо. Тоесть читать-то их надо, но здесь скорость чтения не будет узким горлом.

А по поводу хеширования - это мысль. Я даже об этом не подумал. Ведь поиск можно свалить на механизмы HashTable. Главное правильно сформировать ключик.
...
Рейтинг: 0 / 0
Быстрое сравнение матриц
    #34170475
Фотография Timm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton Timm[quot mayton][quot Timm]16 мсек - это что. Время сравнения одной матрицы с 224 другими?
Ява по моему не совсем (даже совсем не) подходит для написания видео кодеков. Такие вещи серьезно оптимизируют, используя ассемблер.
Это не настолько значимая задача, чтобы я писал ее на ассемблере. Просто возникла проблема быстрого создания компактных презентаций для обучения студентов. И я ей занимаюсь.
MS PowerPoint. Не парьтесь.
...
Рейтинг: 0 / 0
Быстрое сравнение матриц
    #34170541
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я нарисовал метод преобразования матрицы (буква "A") в набор строковых ключиков.
01234567ключ0x000x00110x1811110x3C11110x6611110x6611110x661111110x7E11110x6611110x660x000x00

Для всей матрицы - 0000183C6666667E666600

Дальше дело техники.

З.Ы. Надо еще как-то подкрутить настройки хеша, чтоб коллизий было меньше.

Пошел писать.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Быстрое сравнение матриц
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]