Формула Бэйли-Боруэйна-Плаффа

В этом небольшом рецепте, я покажу результат портирования алгоритма для вычисления по формуле Бэйли-Боруэйна-Плаффа.

Данная формула позволяет найти любую цифру числа Пи без вычисления предыдущих (правда, в шестнадцатеричном представлении), что дает в свою очередь возможность точного расчета числа Пи с требуемой точностью.

Читать далее →

Подробнее

Дискретное вейвлет-преобразование в dlib

В нескольких статьях нашего блога уже затрагивалась тема различной цифровой обработки изображений, но, в основном в них мы касались вопросов явной трансформации изображений (перевод в оттенки серого, фильтрация, применение фильтров и некоторые другие операции) и никак не обращались к способам изменения избыточности изображений. Под избыточностью, в данном случае, понимается некая абстрактная мера, связанная с количеством информации, которое содержится в некоем изображении. Обычно, когда упоминаются выражения наподобии «способ изменения избыточности» или «метод уменьшения информационной энтропии», то речь идет об алгоритмах сжатия или алгоритмах эффективного представления неких данных.

Конечно, я бы хотел рассмотреть здесь методы сжатия изображений, но больше всего мне бы хотелось продемонстрировать суть подобных приемов, обращаясь непосредственно к внутреннему устройству и самым базовым их принципам, но, тематика сжатия изображений слишком обширна для данного блога.

Поэтому, я хотел бы рассказать сегодня о дискретном вейвлет-преобразовании, а точнее, об одной из самых известных его версий — дискретном преобразовании Хаара.

Читать далее →

Подробнее

Формула Таппера в D [посредством dlib]

В этой статье я расскажу про то, что я очень давно намеревался сделать в D, но никак не получалось и постоянно вылезали разные непреодолимые (на тот момент) ошибки. Разумеется, будет описан весь эксперимент с очень простым и легко читаемым кодом, и вы легко сможете его повторить, используя текущую версию dlib.

Эксперимент будет, как обычно, с математической графикой, и на этот раз познакомлю вас с самореферентной формулой, которая называется формулой Таппера.

Читать далее →

Подробнее

Живой узор в QtE5

В этой статье я познакомлю вас с еще одним удивительным примером самоорганизации, который позволяет наглядно (в режиме реального времени) пронаблюдать как из беспорядочного хаоса раскрашенных клеток возникают по своему красивые узоры. Этот пример, отчасти является дальним и очень упрощенным родственником одного из наших проектов по построению клеточного автомата с помощью QtE5, однако, правил в предлагаемом мной эксперименте гораздо меньше, что делает его более притягательным для собcтвенных опытов.

Читать далее →

Подробнее

Idiomatic D. Юнит-тестирование с включенной оптимизацией в dub

В этом небольшом рецепте, который является очередным переводом уже ставшей классикой серии Idiomatic D, мы покажем, как можно с помощью dub собрать программу в режиме юнит-тестирования с включенной оптимизацией.

Итак, предоставим слово автору Idiomatic D.

Читать далее →

Подробнее

Гостевая статья на eax.me

Вчера в блоге «Записки программиста» была опубликована моя гостевая статья под  «Превращаем BlackIce II в Arduino-совместимую RISC-V отладочную плату (гостевой пост Олега Бахарева)». Статья посвящена началу работы с платой BlackIce II в среде Arduino IDE, для чего в плату загружается конфигурация RISC V микроконтроллера и ознакомится с ней вы можете по этой ссылке.

P.S: Я месяц планировал эту статью, а потом решил подарить ее любимому блогу, который так меня вдохновлял в моих экспериментах не только с электроникой, но и с D. Надеюсь, мои дорогие читатели, вы поддержите нашу скромную гостевую статью.

Подробнее

Делаем текст невидимым

В этой статье, я, основываясь на материалах с ресурса ХабраХабр, покажу как превратить обычный текст в серию символов, которые не видны невооруженному человеческому глазу.

Не знаю, к какому классу методов сокрытия данных  отнести такой способ, но я предполагаю, что это стеганография. Буду отталкиваться от такого представления и покажу свой вариант, который не потребует каких-либо сторонних зависимостей, а лишь некоторые функции из стандартной библиотеки.

Читать далее →

Подробнее

Множество Мандельброта в dlib

В одной из статей, посвященных D, я уже описывал множество Мандельброта, которое выглядит очень впечатляюще, но я очень хотел повторить эксперимент еще раз. Такое желание возникло из-за того, что меня не очень устроили результаты прошлого раза: множество получилось перевернутым и к тому же не раскрашенным.

По этой причине, я решил вернуться еще раз к построению данного множества, но уже без помощи DGui.

Читать далее →

Подробнее

Скрытые сокровища стандартной библиотеки [перевод]

В этот раз я решил перевести для вас достаточно скромную статью за авторством Гарри Уилоби (автор блога nomad.so и создатель TkD), которую я так давно давно хотел выложить, но все не мог найти для этого временнЫе ресурсы…

И вот время перевода пришло…

Все то, что будет описано далее приводится практически без изменений, а также, возможно, несколько устарело, однако передаю слово автору статьи…

Читать далее →

Подробнее

Изучаем пример из библиотеки vectorflow

В этот раз я распишу еще один неудачный эксперимент и попутно постараюсь сделать небольшое введение в библиотеку vectorflow, которую разработали в Netflix. Дело в том, что сейчас активно развиваются технологии, связанные с машинным обучением и имитацией нейронных сетей человека, поэтому я решил немного вникнуть в эту тему, для чего в течении двух последних недель пытался разобраться, как порвать гегемонию Python с его библиотеками (написаны не на Python, а на C) и поработать с нейронными сетями.

Не советую радоваться тому, что я опишу, но может быть вам удастся то, что не удалось мне.

Читать далее →

Подробнее