2014 dxdy logo

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

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


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


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



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


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

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


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

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


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

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


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

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


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

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

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


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

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


23/07/08
10702
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
1884
Санкт-Петербург
MakarovDs в сообщении #1619451 писал(а):
Нормально все сжимает, у меня все нормально сжало. Любую последовательность чисел разжимает, и сжимает.

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

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

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


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

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

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


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

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


10/03/16
4003
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
1884
Санкт-Петербург
ozheredov
Новогодняя мысль )

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


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

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


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

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

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



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

Сейчас этот форум просматривают: mihaild, YandexBot [bot]


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

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