memory heap
367 subscribers
2.5K photos
509 videos
52 files
3.09K links
science ∩ art = wonder

all memory blocks here are allocated by @a_v_p

GitHub: https://github.com/artyom-poptsov
Mastodon: https://fosstodon.org/@avp

https://memory-heap.org/~avp/
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
Фотошоп+нейросети:
Есть плагин для Photoshop и Krita под названием flying dog с поддержкой Stable Diffusion, который позволяет сразу менять выделенную или вырезанную область на результат текстового запроса.
И так это выглядит

r/#StableDiffusion
Forwarded from Archillect
Forwarded from Адовый UX
Это меню, лично для вас — адовый UX или райский? Вы сразу понимаете, как тут что? Или нужно стоять и втыкать?

Голосуем!

Адовый — 💩
Райский — ❤️
7🤔1
Выпустил релиз Guile-ICS 0.4.0:
https://github.com/artyom-poptsov/guile-ics/releases/tag/v0.4.0

Анонс в списке рассылки GNU Guile:
https://lists.gnu.org/archive/html/guile-user/2022-10/msg00075.html

Основные изменения:
- Добавлена базовая поддержка формата vCard (RFC 6350), используемого для передачи контактных данных.
- Улучшена утилита командной строки ics: теперь она лучше структуирована и поддерживает команды print, describe и convert.

С помощью ics convert теперь можно делать преобразование данных DSV (Delimiter-Separated Values) в iCalendar/vCard.

Например, пусть у вас в файле data.csv есть следующие данные:

ORG,TITLE,FN,EMAIL
Example Organisation,Programmer,Eva Luator,[email protected]
Example Organisation,Programmer,Random J. Hacker,[email protected]

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

То из него можно получить легко контактные карточки через ics convert:

$ ics convert data.csv
BEGIN:VCARD
EMAIL:[email protected]
FN:Eva Luator
TITLE:Programmer
ORG:Example Organisation
END:VCARD

BEGIN:VCARD
EMAIL:[email protected]
FN:Random J. Hacker
TITLE:Programmer
ORG:Example Organisation
END:VCARD

Если вывод ics convert перенаправить в файл, то получится файл с контактными данными. Потом этот файл можно загрузить в почтовый клиент, или приложение контактов в мобильном устройстве, и таким образом сделать массовую загрузку контактов (реальная задача, которая меня и сподвигла на реализацию этой возможности.)

Отправил также патч с обновлением Guile-ICS в GNU Guix:
https://mail.gnu.org/archive/html/guix-patches/2022-10/msg01846.html

#projects #guile #rfc5545 #rfc6350 #parser
👍1
В левой части скриншота — исходное изображение в формате PNG (RFC 2083) размером 2x2 пикселей с простым чёрно-белым рисунком. В правой части скриншота — результат преобразования изображения (инверсия цветов) через Guile-PNG. На фоне — выполненная команда преобразования.

Исходнй код программы:
#!/usr/bin/guile \
-L modules -e main -s
!#

(use-modules (png)
(png image)
(png filter))

(define (main args)
(let* ((png-image (png->scm (current-input-port)))
(new-image (png-image-filter-invert-colors png-image)))
(png-image->png new-image (current-output-port))))


Открыта новая технология: PNG.
\o/

#projects #guile #png #lisp
👍1
🔥3
Как оказалось, инверсия цветов в Guile-PNG не всегда работает корректно. В результате получаются вот такие артефакты.

(Парсер PNG, как же я тебя понимаю 😐)

#projects #guile #png #parser #lisp
😁3
Измеряю качество обработки изображений в самописной библиотеке PNG с помощью шакалов. 9 шакалов из 9, я считаю.

#projects #guile #png #parser #lisp
👍4