AlgART Java Libraries
| Версія | 1.2 |
|---|---|
| Видавництво | AlgART Laboratory |
| Дата випуску | 23 груд. 2013 р. |
| Дату додано | 11 груд. 2013 р. |
| Вимоги ОС | Windows 2003, Windows 8, Windows Vista, Windows, Windows Server 2008, Windows 7 |
| Вимоги | JDK |
| Загальна кількість завантажень | 34 |
| Ціна | Free |
Опис
Бібліотеки Java з відкритим кодом, що підтримують узагальнені розумні масиви та матриці з елементами будь-яких типів (1 біт, 8/16/32/64-бітні цілі числа, 32/64-бітні значення з плаваючою комою та будь-які інші типи Java). Бібліотеки містять широкий набір алгоритмів обробки 2D-, 3D- і багатовимірних зображень над матрицями: лінійна фільтрація, математична морфологія, рангові операції, спектральне перетворення (FFT) тощо. Існує також скелетонізація та вимірювання бінарних зображень. Бібліотеки використовують 63-бітну адресацію елементів масиву (всі індекси та довжина представлені 64-бітним типом long). Отже, теоретично можливо створювати та обробляти масиви та матриці, що містять до 2^63-1 (~10^19) елементів будь-яких примітивних або непримітивних типів, якщо ОС та апаратне забезпечення можуть забезпечити необхідний обсяг пам’яті або дискового простору. Концепція моделі пам'яті дозволяє зберігати масиви AlgART у різних схемах, від простих масивів Java до відображених дискових файлів; всі необхідні передачі даних виконуються автоматично при кожному зверненні до елемента або блоку елементів. Більшість алгоритмів засновані на широкому використанні ледачих оцінок. Типові операції, такі як поелементне підсумовування або геометричні матричні перетворення, реалізуються за допомогою відкладених переглядів вихідного масиву або матриці. Наприклад, ви можете взяти багатовимірну матрицю, повернути її (або виконати будь-яке інше афінне чи проективне перетворення), а потім витягнути підматрицю з результату. Всі ці операції будуть виконуватися віртуально (не вимагаючи часу), а реальні обчислення будуть виконуватися тільки в момент звернення до елементів, зазвичай під час копіювання отриманої матриці в новостворену. Крім того, у багатьох випадках бібліотеки самі «зрозуміють», що користувач хоче виконати обертання або інше перетворення, і розіб’ють матрицю на відповідні прямокутні блоки (розміщуються в оперативній пам’яті) і виберуть найкращий алгоритм для цього завдання на момент виконання. операція копіювання.