Если в задании не был обговорен способ парсинга, то нужно использовать готовые либы, тогда описанной проблемы и не случилось бы. CSV не так уж и проист на самом деле. Помимо экранирования кавычек и запятых нужно также учесть и перенос внутри строкового значения:
Метаданные все равно остаются. Это тоже может быть непонятно.
JFIF в начале - это комментарий, там может быть что угодно. У вас 3-й байт 0xFF относится уже к следующему маркеру. Парсер пропускает все от данных (структрура которых задается маркером) до следующего маркера. У начального маркера данных нет, поэтому файл может начинаться например как 0xFF, 0xD8, "Hello world", 0xFF, 0xDB.
Насчет исключения да, спасибо, надо поправить. Но судя по тому, что вы сохранили как txt, замечу, что это не рендерер img->ascii. Более наглядно получается, если в исходном изображении нет мелких деталей.
Мне кажется, что финальная версия функция рисования противоречит Single Responsible Principle. Здесь и сортировка и отрисовка. Хотя порядок определяется не в этой функции, но, тем не менее, он завязан на operator<, что не очень гибко. Например, нам может понадобится распечатывать объекты с другим порядком, тогда нужно передавать предикат. Лучше передавать в функцию уже упорядоченный список.
@Exosphere, к какой номинации подходят статьи про алгоритмы? Меня, в частности, интересует JPEG
Через onnxruntime на Питоне. Планирую попробовать эту либу на C++
Использую ваш детектор с своем плеере для ускорения, пропуска или приглушения неголосовых фрагментов видео. Спасибо!
У вас "09.03.01 09.04.01 Информатика и вычислительная техника"
Если в задании не был обговорен способ парсинга, то нужно использовать готовые либы, тогда описанной проблемы и не случилось бы. CSV не так уж и проист на самом деле. Помимо экранирования кавычек и запятых нужно также учесть и перенос внутри строкового значения:
Корректнее говорить о продолжительности солнечных суток, так как оборот вокруг оси земля совершает за ~23:56:04.
А, не знал, спасибо!
Спасибо! Жаль котенка нет :) Это отсюда:
Seven red straight lines perpendicular to each other, two red, two green, three transparent and one in the shape of a kitten
Это как? Ближайшее приближение для 2.53, которое можно представить во float — 1.2649999856948853 * 2 == 2.5299999713897706
DCT — это обычное ортогональное преобразование, то есть смена базиса. Потери происходят из-за квантования полученных значений.
Logseq. Десктопный (правда на Электроне), self-hosted, опенсорсный.
jpeg не изменился и все так же популярен :) Рад, что пригодилось!
Метаданные все равно остаются. Это тоже может быть непонятно.
JFIF в начале - это комментарий, там может быть что угодно. У вас 3-й байт 0xFF относится уже к следующему маркеру. Парсер пропускает все от данных (структрура которых задается маркером) до следующего маркера. У начального маркера данных нет, поэтому файл может начинаться например как 0xFF, 0xD8, "Hello world", 0xFF, 0xDB.
Вы ещё один, который подумал, что я сделал рендерер в ascii. Одни и те же символы предназначены и для визуализации и для декодера
А, у меня была старая версия Хабра, в ней все норм. Спасибо, добавил примечание!
Я с питоном не очень знаком. Спасибо, попробую )
Насчет исключения да, спасибо, надо поправить. Но судя по тому, что вы сохранили как txt, замечу, что это не рендерер img->ascii. Более наглядно получается, если в исходном изображении нет мелких деталей.
Мне кажется, что финальная версия функция рисования противоречит Single Responsible Principle. Здесь и сортировка и отрисовка. Хотя порядок определяется не в этой функции, но, тем не менее, он завязан на operator<, что не очень гибко. Например, нам может понадобится распечатывать объекты с другим порядком, тогда нужно передавать предикат. Лучше передавать в функцию уже упорядоченный список.
Про некоммерческий проект можно написать и в технические хабы, так про него узнает больше.