Другой вариант - использовать localizedStandardCompare:
. Из документации:
Этот метод следует использовать всякий раз, когда имена файлов или другие строки представлены в списках и таблицах, где подходит сортировка по поисковому запросу.
blockquote>Это отсортирует строки, соответствующие текущему языку. Пример:
let myArray = ["Step 6", "Step 12", "Step 10"] let ans = sorted(myArray,{ (s1, s2) in return s1.localizedStandardCompare(s2) == NSComparisonResult.OrderedAscending }) println(ans) // [Step 6, Step 10, Step 12]
Обновление: вышеупомянутый ответ довольно старый и для Swift 1.2. Версия Swift 3 (спасибо @Ahmad):
let ans = myArray.sorted { (s1, s2) -> Bool in return s1.localizedStandardCompare(s2) == .orderedAscending }
Для другого подхода см. https://stackoverflow.com/a/31209763/1187415 , переведенный на Swift 3 в https://stackoverflow.com/a/39748677/1187415 .
Существует ImageJ, который хвастается, чтобы быть
самая быстрая чистая программа
обработки изображений Java в мире, Это может использоваться в качестве библиотеки в другом приложении. Это - архитектура, не является блестящим, но это делает основные задачи обработки изображений.
Обработка является новой, но очень, очень хорошей.
Для коммерческих инструментов Вы могли бы хотеть попробовать Засыпанный снегом.
Мой опыт с ними несколько датирован, но я нашел их Java API Обработки изображений, чтобы быть намного легче использовать, чем JAI и намного быстрее.
Их поддержка клиентов и примеры кода были очень хороши также.
Я не парень Java, но OpenCV является большим для моих потребностей. Не уверенный, если это соответствует Вашему. Вот порт Java, я думаю: http://docs.opencv.org/2.4/doc/tutorials/introduction/desktop_java/java_dev_intro.html
Программное обеспечение видения RoboRealm список упоминания JHLabs и NeatVision среди большого количества других основанных на не-Java библиотек.
http://im4java.sourceforge.net/ - если вы используете Linux, разветвление нового процесса не требует больших затрат.