2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


Посмотреть правила форума



Начать новую тему Ответить на тему На страницу Пред.  1, 2, 3
 
 Re: Как создать такую функцию спиралей Архимеда? Сжатие данных.
Сообщение24.11.2023, 00:16 


27/08/16
10218
В этом всём самое забавное, сколько у ТС на сайте выложено сертификатов прохождения разных IT курсов. С подобным уровнем невежества.

 Профиль  
                  
 
 Re: Как создать такую функцию спиралей Архимеда? Сжатие данных.
Сообщение24.11.2023, 00:46 
Заслуженный участник


12/08/10
1677
Переменная fig - это что объект-диаграмма, которая(в том числе) хранит исходный массив?

 Профиль  
                  
 
 Re: Как создать такую функцию спиралей Архимеда? Сжатие данных.
Сообщение24.11.2023, 01:01 
Аватара пользователя


05/06/08
477
Разложение по базису Архимеда. Типа sin cos. В базисе Фурье.
Замечательный стеб. Особенно доставляют иллюстрации ручной работы.

 Профиль  
                  
 
 Re: Как создать такую функцию спиралей Архимеда? Сжатие данных.
Сообщение24.11.2023, 01:30 


27/08/16
10218
Какой ещё Фурье-базис? Числа в лейблах линий записаны.

 Профиль  
                  
 
 Re: Как создать такую функцию спиралей Архимеда? Сжатие данных.
Сообщение24.11.2023, 01:54 
Аватара пользователя


05/06/08
477
realeugene в сообщении #1619474 писал(а):
Какой ещё Фурье-базис? Числа в лейблах линий записаны.

В этом и стеб. Но отсылка именно к Фурье базису. Отсюда две стирали. Именно его использовали на начальных этапах исследований по сжатию. А базис cos - это просто классика. Основа jpg кодирования.

 Профиль  
                  
 
 Re: Как создать такую функцию спиралей Архимеда? Сжатие данных.
Сообщение24.11.2023, 01:55 


27/08/16
10218
MGM в сообщении #1619478 писал(а):
Основа jpg кодирования.
Сжатие сжатию рознь. Вы про сжатие с потерями.

 Профиль  
                  
 
 Re: Как создать такую функцию спиралей Архимеда? Сжатие данных.
Сообщение24.11.2023, 02:15 
Заслуженный участник
Аватара пользователя


23/07/08
10909
Crna Gora
Dmitriy40 в сообщении #1619237 писал(а):
Повторю: со спиралями вытворяйте что хотите, но сжатием любых данных это не называйте, последнее невозможно: если после расжатия обратно должна получаться любая из $2^n$ комбинаций, т.е. строка/файл из $n$ битов, то и сжатые данные должны иметь не менее $2^n$ комбинаций (иначе какую-то из выходных комбинаций получить не сможете), т.е. ровно те же $n$ битов, т.е. сжатие полностью отсутствует. Банальная математика.
EUgeneUS в сообщении #1619341 писал(а):
Кстати, есть простая формула, которая чинит голову (если она есть, конечно) любителям поискать алгоритм сжатия, который ужмет любой файл.
Всего файлов длины ровно $n$ бит: $N(n) = 2^n$
Всего файлов длины меньше $n$ бит: $N(<n) = \sum\limits_{i=0}^{n-1} 2^i =2^n -1$
То есть из файлов длины $n$ всегда найдется как минимум один, который не ужмется.
Очень давно читал в Сети такую историю (за давностью могу ошибиться в каких-то деталях). На одном форуме уважаемый профессор пытался донести до народа эту же идею. В ответ один программист дерзко заявил, что берётся сжать любые данные с возможностью восстановления. Заключили пари на сто долларов. Условия спора были такими:
1) Программист отправляет профессору распаковщик (исполняемый файл).
2) Профессор отправляет программисту файл с произвольными исходными данными (например, случайную последовательность байтов).
3) Программист упаковывает эти данные и отправляет профессору.
4) Профессор подаёт упакованные данные на вход распаковщика и сравнивает результат со своей исходной последовательностью. Если совпало, и упакованные данные по размеру меньше исходных, выигрывает программист. Иначе — профессор.

Когда дошло до третьего пункта, программист спросил профессора, может ли он переправить сжатые данные не одним большим куском, а частями, т.е. несколькими файлами (кажется, сославшись на постоянно слетавший Интернет — дело было в доисторическую эпоху). Профессор ответил: "Нет проблем". Файлы были пересланы, их общий размер оказался заметно меньше исходного, тем не менее, последовательность восстановилась совершенно правильно. И программер получил свои $100. Как ему это удалось? См. оффтоп.

(Оффтоп)

Упаковщик просто копировал исходную информацию в выходной файл. За следующим исключением. Когда во входном файле встречался байт с нулевым (для примера) значением, упаковщик этот байт выбрасывал, закрывал текущий выходной файл и открывал для записи новый, как следующую часть.

Программа-распаковщик, сшивая вместе две соседние части, вставляла в место сшивки нулевой байт.

Ясно, что необязательно поступать так со всеми нулями (части получатся подозрительно короткими и очень разных размеров), а лишь с достаточным их числом. Также для маскировки можно применить простейшее шифрование.

 Профиль  
                  
 
 Re: Как создать такую функцию спиралей Архимеда? Сжатие данных.
Сообщение24.11.2023, 07:31 
Заслуженный участник
Аватара пользователя


21/11/12
1968
Санкт-Петербург
MakarovDs в сообщении #1619451 писал(а):
Нормально все сжимает, у меня все нормально сжало. Любую последовательность чисел разжимает, и сжимает.

Все на славу удалось — там, где нужно, взорвалось! 1951 г.

А стоять на голове кроме человека умеет только слоник.

 Профиль  
                  
 
 Re: Как создать такую функцию спиралей Архимеда? Сжатие данных.
Сообщение24.11.2023, 12:40 
Аватара пользователя


05/06/08
477
realeugene в сообщении #1619479 писал(а):
MGM в сообщении #1619478 писал(а):
Основа jpg кодирования.
Сжатие сжатию рознь. Вы про сжатие с потерями.

Как и потери потерям рознь. Если с точность до шума - практически без потерь.
Кстати, сжатие с потерями можно преобразовать к сжатию без потерь. Это как код Хаффмана. Сначала почти точное приближение, а затем кодитуется уже разница. Вполне себе кодировка на основе вейвлет преобразований.

 Профиль  
                  
 
 Re: Как создать такую функцию спиралей Архимеда? Сжатие данных.
Сообщение24.11.2023, 12:55 


27/08/16
10218
MGM в сообщении #1619528 писал(а):
Как и потери потерям рознь. Если с точность до шума - практически без потерь.
Это принципиально разные вещи. Сжатите без потерь обязано восстанавливать каждый бит в произвольной битовой последовательности. Сжатие с потерями приближает выход ко входу по некоторой мере, но не восстанавливает битовый поток точно. Преобразовать алгоритм сжатия с потерями как чёрный ящик в алгоритм сжатия без потерь, конечно, можно, дополнительно передав (некодированную) ошибку, но не факт, что получится в результате хороший алгоритм сжатия без потерь, а не раздуватель какой-нибудь, так как сжатие с потерями нередко использует сложные биологические и психологические модели восприятия сигналов человеком, и декодированный сигнал может быть побитово совершенно не похож на исходный.

 Профиль  
                  
 
 Re: Как создать такую функцию спиралей Архимеда? Сжатие данных.
Сообщение24.11.2023, 13:29 


10/03/16
4444
Aeroport
svv в сообщении #1619480 писал(а):
Файлы были пересланы, их общий размер оказался заметно меньше исходного


А чего не сжал до нуля :o ? Закодировал бы каждый байт двумя буквами расширения файла (24 в квадрате явно больше, чем 256) и цифрой, сколько раз это байт повторяется. Название файла это номер байта в восстановленной последовательности, сами файлы очевидно весят 0 байт.

svv в сообщении #1619480 писал(а):
необязательно поступать так со всеми нулями (части получатся подозрительно короткими и очень разных размеров)


Абсолютно не важно. Погромизд сказал - погромизд сделал - погромизд выиграл спор. С самого начала было понятно, что это развод фокус-покус, или профессор засомневался в формуле $2^N$? Я бы в любом случае отдал ему $100 - век живи, век учись.

-- 24.11.2023, 13:30 --

Andrey A в сообщении #1619485 писал(а):
А стоять на голове кроме человека умеет только слоник.


Вызываю пояснительную бригаду! :D

 Профиль  
                  
 
 Re: Как создать такую функцию спиралей Архимеда? Сжатие данных.
Сообщение24.11.2023, 15:43 
Заслуженный участник
Аватара пользователя


21/11/12
1968
Санкт-Петербург
ozheredov
Новогодняя мысль )

 Профиль  
                  
 
 Re: Как создать такую функцию спиралей Архимеда? Сжатие данных.
Сообщение24.11.2023, 16:14 
Заслуженный участник
Аватара пользователя


23/07/08
10909
Crna Gora
ozheredov в сообщении #1619547 писал(а):
А чего не сжал до нуля :o ?
Я думаю, целью №2 у программиста было вызвать изумление профессора, когда тот видит, что совершенно случайную последовательность, похоже, действительно удалось заметно сжать без видимого жульничества, вопреки теории. Деньги — хорошо, но это — более тонкое удовольствие.

 Профиль  
                  
 
 Re: Как создать такую функцию спиралей Архимеда? Сжатие данных.
Сообщение24.11.2023, 21:19 


17/10/16
4812
svv
К файлу была добавлена неявная информация - разбиение его на части. По сути, это вставка в файл "разрезных" битов. Их бы тоже следовало учитывать, конечно. Разрезанный на части файл содержит больше информации, чем не разрезанный. Но, конечно, до этого сразу не догадаешься.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 44 ]  На страницу Пред.  1, 2, 3

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group