<?xml version="1.0" encoding="utf-8" ?><rss version="2.0" xmlns:tt="http://teletype.in/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:media="http://search.yahoo.com/mrss/"><channel><title>@kristina_o_neironkax</title><generator>teletype.in</generator><description><![CDATA[@kristina_o_neironkax]]></description><link>https://teletype.in/@kristina_o_neironkax?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=kristina_o_neironkax</link><atom:link rel="self" type="application/rss+xml" href="https://teletype.in/rss/kristina_o_neironkax?offset=0"></atom:link><atom:link rel="next" type="application/rss+xml" href="https://teletype.in/rss/kristina_o_neironkax?offset=10"></atom:link><atom:link rel="search" type="application/opensearchdescription+xml" title="Teletype" href="https://teletype.in/opensearch.xml"></atom:link><pubDate>Wed, 11 Nov 2026 18:29:20 GMT</pubDate><lastBuildDate>Wed, 11 Nov 2026 18:29:20 GMT</lastBuildDate><item><guid isPermaLink="true">https://teletype.in/@kristina_o_neironkax/FHY9i6pnHX-</guid><link>https://teletype.in/@kristina_o_neironkax/FHY9i6pnHX-?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=kristina_o_neironkax</link><comments>https://teletype.in/@kristina_o_neironkax/FHY9i6pnHX-?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=kristina_o_neironkax#comments</comments><dc:creator>kristina_o_neironkax</dc:creator><title>Снимать видео vs Смотреть видео</title><pubDate>Wed, 11 Nov 2026 17:09:34 GMT</pubDate><media:content medium="image" url="https://img4.teletype.in/files/ba/a3/baa34c64-310d-41ac-9694-814984417e05.png"></media:content><description><![CDATA[<img src="https://img3.teletype.in/files/64/9c/649c4c78-a514-4a5f-b146-a91e62f5b360.png"></img>Сегодня у меня день контента, и я решила рассказать, как устроен мой пайплайн монтажа. Ещё неделька до выхода на учёбу, и вот так совпало: за это время я успела сделать первого ИИ-агента для себя. Попробовать его можно в моей группе про нейронки, вход через прихожую, ссылка в моём профиле.]]></description><content:encoded><![CDATA[
  <figure id="uUoo" class="m_original">
    <img src="https://img3.teletype.in/files/64/9c/649c4c78-a514-4a5f-b146-a91e62f5b360.png" width="605" />
  </figure>
  <p id="VeYr">Сегодня у меня день контента, и я решила рассказать, как устроен мой пайплайн монтажа. Ещё неделька до выхода на учёбу, и вот так совпало: за это время я успела сделать первого ИИ-агента для себя. Попробовать его можно в моей группе про нейронки, вход через прихожую, ссылка в моём профиле.</p>
  <p id="jxg1">А теперь про монтаж. Я потрогала пайплайн и хочу понять, что у меня заработает с первого захода, а что придётся отложить.</p>
  <p id="quZQ">Сегодня я снимаю себя прямо со звонка, одной рукой, на телефон, лицом к камере, а за спиной монитор. Так меня учат, чтобы показывать рабочий процесс. Поэтому вы видите, как я читаю, анализирую тренды, где я обучаюсь. Качество исходника будет так себе, но для меня это не проблема.</p>
  <p id="MiRF">После съёмки я закидываю исходники в папку First Video. Длинные записи Клод прогоняет через автоэдитор, он вырезает паузы. Потом речь размечаю через MLX Whisper. В середину каждого клипа вставляю анимированный B-roll. Фон и акценты собираю из библиотеки звуков Опуса. Через FFmpeg склеиваю клипы и звук. И всё.</p>
  <p id="NNuG">Картинку к сегодняшнему дню нарисовал Lovable. На ней как раз процесс сборки пайплайна: такая труба, через которую должны пройти мои ролики.</p>
  <p id="op8D">Кстати, в этом же пайплайне будет участвовать группа для записи подкастов, ссылка на неё вот здесь: https://t.me/greatpodcasts_greatidea/1. </p>
  <p id="36it">Заходите в прихожую <a href="https://t.me/prihoja" target="_blank">https://t.me/prihoja</a> ко мне и читайте больше интересных статей.</p>

]]></content:encoded></item><item><guid isPermaLink="true">https://teletype.in/@kristina_o_neironkax/B1a3ldreHI2</guid><link>https://teletype.in/@kristina_o_neironkax/B1a3ldreHI2?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=kristina_o_neironkax</link><comments>https://teletype.in/@kristina_o_neironkax/B1a3ldreHI2?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=kristina_o_neironkax#comments</comments><dc:creator>kristina_o_neironkax</dc:creator><title># Куда на самом деле уходят токены: 7 способов сэкономить</title><pubDate>Sun, 01 Nov 2026 22:12:14 GMT</pubDate><media:content medium="image" url="https://img1.teletype.in/files/08/c8/08c8734a-1518-4276-a1a8-494aa4cbbbd6.png"></media:content><description><![CDATA[<img src="https://img4.teletype.in/files/f6/3c/f63cde22-88b7-4631-a9c0-d8e48caa63dd.jpeg"></img>Практика · 7 шагов к экономии *Главные «пожиратели» токенов — не сами задачи, а обвязка вокруг них.* Вот что стоит изменить, в порядке выгоды. ## 01. Лишние подключения и плагины — самое крупное В каждом чате я получаю описание всех подключённых инструментов: Ahrefs (~150 инструментов), Semrush, OpenSEO, Lovable, Piratex, Gmail, Calendar, Drive, Chrome, плюс десятки скиллов. Это вес, который тянется в каждое сообщение, даже в «привет». - Отключай коннекторы, которые не нужны постоянно. SEO-тройку (Ahrefs, Semrush, OpenSEO) оставь одну или включай только под SEO-задачи.- Плагин superpowers требует загружать скилл перед любым ответом, а brainstorming — перед любой творческой работой. На простых задачах это чистый перерасход. Его лучше...]]></description><content:encoded><![CDATA[
  <figure id="DSF1" class="m_original">
    <img src="https://img4.teletype.in/files/f6/3c/f63cde22-88b7-4631-a9c0-d8e48caa63dd.jpeg" width="1200" />
  </figure>
  <p id="Dgoc"><strong>Практика · 7 шагов к экономии<br /></strong><br />*<strong>Главные «пожиратели» токенов — не сами задачи, а обвязка вокруг них.*</strong> Вот что стоит изменить, в порядке выгоды.<br /><br />## 01. Лишние подключения и плагины — самое крупное<br />В каждом чате я получаю описание всех подключённых инструментов: Ahrefs (~150 инструментов), Semrush, OpenSEO, Lovable, Piratex, Gmail, Calendar, Drive, Chrome, плюс десятки скиллов. Это вес, который тянется в каждое сообщение, даже в «привет».<br />- Отключай коннекторы, которые не нужны постоянно. SEO-тройку (Ahrefs, Semrush, OpenSEO) оставь одну или включай только под SEO-задачи.- Плагин superpowers требует загружать скилл перед любым ответом, а brainstorming — перед любой творческой работой. На простых задачах это чистый перерасход. Его лучше включать только на серьёзные разработки.- Пересекающиеся скиллы (quality-checker, task-planner, safety-guard) тоже срабатывают и добавляют шаги. Оставь те, что реально помогают.<br /><br />## 02. Модель под задачу<br />Простые вопросы, тексты, переводы, посты для канала отдай Sonnet или Haiku. Opus оставь для архитектуры, отладки и сложных разработок. Модель можно переключать прямо в чате.<br /><br />## 03. Короткие чаты - быстрая победа<br />Каждое моё сообщение перечитывает всю историю чата. Длинная ветка, где ты прыгаешь от бота к сайту и к посту, дорожает с каждым шагом.<br />&gt; Одна задача - один чат.<br />Если нужно продолжить, попроси меня в конце сделать короткую выжимку и вставь её в новый чат.<br /><br />## 04. Разработка: контекст в репо, а не в разговоре<br />- В каждом активном репо (EspañolReal, Beauty Reels, Threads Monitor и т.д.) держи CLAUDE.md: стек, структура, как запускать и деплоить, что нельзя трогать. Тогда мне не нужно каждый раз заново исследовать проект.- Давай точные указатели: «файл X, функция Y, вот ошибка». Это дешевле, чем «посмотри, почему не работает».- Логи перед отправкой обрезай до ошибки и 20–30 строк вокруг неё.<br /><br />## 05. Субагенты<br />Твоё правило «ревьюер перед деплоем» правильное, но каждый субагент стартует с нуля и заново читает код. Два способа удешевить:<br />- Ревьюер на Sonnet, а не на Opus.- Ревью только при деплое на прод, не на каждый коммит.<br />Глубокое исследование тоже порождает субагентов, поэтому запускай его только когда правда нужен большой отчёт.<br /><br />## 06. Формат ответа<br />Можно сказать один раз, и я запомню:<br />&gt; «В коде - только diff/изменённые куски, без пересказа; объяснения — только если спрошу».<br />На разработке это экономит заметно.<br /><br />## 07. Пакетируй мелочи<br />Пять мелких вопросов одним сообщением дешевле пяти отдельных: обвязка из пункта 1 оплачивается один раз. <br /><br />## Самое главное<br /><br />*<strong>Начни с двух вещей. Отключи лишнее. Сократи чаты.*</strong> <br />Если сделать только пункты 1 и 3, уже будет ощутимая разница.<br /><br /><strong>Статья канала «Кристина о нейронках». Полезное стоит сохранить.</strong></p>

]]></content:encoded></item><item><guid isPermaLink="true">https://teletype.in/@kristina_o_neironkax/Qyubhi5yfhU</guid><link>https://teletype.in/@kristina_o_neironkax/Qyubhi5yfhU?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=kristina_o_neironkax</link><comments>https://teletype.in/@kristina_o_neironkax/Qyubhi5yfhU?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=kristina_o_neironkax#comments</comments><dc:creator>kristina_o_neironkax</dc:creator><title>Похудел, вышел или снялся в рекламе? Разбираем две реплики на испанском</title><pubDate>Sun, 01 Nov 2026 10:46:24 GMT</pubDate><description><![CDATA[<img src="https://img4.teletype.in/files/b0/28/b0285db7-2da2-4231-a137-bc7c0bc869b9.png"></img>Разговорный испанский | Кристина Перез Почему bajaste означает «ты похудел»? Можно ли сказать subiste, если человек набрал вес? Как это связано с estar de baja — «быть на больничном»? И почему salir вдруг переводится как «сняться в рекламе»? Все эти вопросы появились у меня после короткого диалога: — Estás tan guapo y bajaste unos… cincuenta y dos kilos y medio. — Sí, voy a salir en un comercial para obesos. Перевод: — Ты такой красавчик, и ты сбросил примерно… пятьдесят два с половиной килограмма. — Да, я снимусь в рекламе для людей с ожирением. Давайте разберём, как знакомые слова складываются в неожиданный смысл. 1. Почему bajaste — «ты сбросил вес»? У глагола bajar есть основная идея: движение вниз, снижение. Можно спускаться...]]></description><content:encoded><![CDATA[
  <p id="C5e2"><br /><em>Разговорный испанский | Кристина Перез<br /></em><br />Почему <strong>bajaste</strong> означает «ты похудел»? Можно ли сказать <strong>subiste</strong>, если человек набрал вес? Как это связано с <strong>estar de baja</strong> — «быть на больничном»? И почему <strong>salir</strong> вдруг переводится как «сняться в рекламе»?<br /><br />Все эти вопросы появились у меня после короткого диалога:<br />— <strong>Estás tan guapo y bajaste unos… cincuenta y dos kilos y medio.</strong><br />— <strong>Sí, voy a salir en un comercial para obesos.</strong><br />Перевод:<br />— Ты такой красавчик, и ты сбросил примерно… пятьдесят два с половиной килограмма.<br />— Да, я снимусь в рекламе для людей с ожирением.<br /><br />Давайте разберём, как знакомые слова складываются в неожиданный смысл.<br /><strong>1. Почему bajaste — «ты сбросил вес»?</strong><br />У глагола <strong>bajar</strong> есть основная идея: движение вниз, снижение. Можно спускаться по лестнице, уменьшать громкость — или снижать вес.<br /><strong>Bajaste</strong> — форма прошедшего времени для <strong>tú</strong>, «ты»:<br /><strong>Bajaste cinco kilos.</strong><br />Ты сбросил пять килограммов.<br /><strong>Bajar de peso</strong> — худеть, снижать вес. Если мы называем количество килограммов, отдельное слово «вес» уже не нужно.<br /><br />А <strong>kilos y medio</strong> означает «килограммов с половиной»:<br /><strong>Cincuenta y dos kilos y medio</strong> — пятьдесят два с половиной килограмма.<br /><strong>2. А если человек набрал вес — subiste?</strong><br />Да! Здесь работает обратное движение: <strong>bajar — вниз, subir — вверх</strong>.<br /><br /><strong>¿Subiste de peso?</strong><br />Ты набрал вес?<br /><strong>Subiste cinco kilos.</strong><br />Ты набрал пять килограммов.<br /><br />В Испании также часто говорят:<br /><strong>¿Has ganado peso?</strong> — Ты набрал вес?<br /><strong>¿Has perdido peso?</strong> — Ты сбросил вес?<br />Ещё два полезных глагола:<br /><strong>Engordar</strong> — полнеть.<br /><strong>Adelgazar</strong> — худеть.<br /><strong>Has adelgazado mucho.</strong><br />Ты сильно похудел.<br /><br /><strong>3. При чём здесь больничный — estar de baja?<br /><br /></strong>Разберем в канале. Переходи и вступай  <strong><br /><a href="https://t.me/+5o4r3IdmQR43M2Yy" target="_blank">https://t.me/+5o4r3IdmQR43M2Yy</a><br /> </strong></p>

]]></content:encoded></item><item><guid isPermaLink="true">https://teletype.in/@kristina_o_neironkax/8CtUYMXiZQF</guid><link>https://teletype.in/@kristina_o_neironkax/8CtUYMXiZQF?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=kristina_o_neironkax</link><comments>https://teletype.in/@kristina_o_neironkax/8CtUYMXiZQF?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=kristina_o_neironkax#comments</comments><dc:creator>kristina_o_neironkax</dc:creator><title>Как я разобрала 738 фотографий за одно воскресенье и как это сделать тебе</title><pubDate>Sun, 25 Oct 2026 19:33:36 GMT</pubDate><media:content medium="image" url="https://img4.teletype.in/files/bf/80/bf802585-1228-4961-9118-1e623ab703e6.png"></media:content><description><![CDATA[<img src="https://avatars.dzeninfra.ru/get-zen_doc/271828/pub_6ade410499791f7d2cf73817_6ade45c595e73b66d2f45921/scale_1200"></img># Как я превратила папку фото со слайдов в заметки Obsidian. Бесплатно, офлайн и с граблями]]></description><content:encoded><![CDATA[
  <p id="AQ2q"># Как я превратила папку фото со слайдов в заметки Obsidian. Бесплатно, офлайн и с граблями</p>
  <p id="cUrt">Если вы были на Нейроконцентрате и наделали фоток, а теперь вам не хватает времени их разобрать, вот как это сделала я 👇</p>
  <figure id="XaJt" class="m_custom">
    <img src="https://avatars.dzeninfra.ru/get-zen_doc/271828/pub_6ade410499791f7d2cf73817_6ade45c595e73b66d2f45921/scale_1200" width="1200" />
  </figure>
  <p id="c8nL">У меня тоже скопилась папка фото со слайдов. Снимала телефоном прямо с экрана. Разобрать руки так и не дошли 😄</p>
  <p id="bdae">В воскресенье я села с Claude и за день собрала штуку, которая сама читает текст с каждого фото и складывает его в Obsidian. Одно фото - одна заметка: картинка сверху, текст снизу.</p>
  <p id="pIp1">Быстро не получилось. Мы сменили движок распознавания, перебрали кучу настроек, ловили зависания, а под конец у меня отвалился Python. Рассказываю, как было, чтобы вы прошли этот путь за вечер, а не за день.</p>
  <p id="5o3w">Что в результате:</p>
  <p id="6qmp">- работает бесплатно и без интернета, фото никуда не уходят;</p>
  <p id="jiqO">- на одно фото уходит 5-8 секунд;</p>
  <p id="wS36">- оригиналы лежат где лежали, в Obsidian попадают копии;</p>
  <p id="8uy6">- по базе можно искать и задавать по ней вопросы Claude.</p>
  <p id="4A1i">## Что понадобится</p>
  <p id="HrYD">**Umi-OCR** - бесплатная программа для распознавания текста на компьютере.</p>
  <p id="9N8C">**Плагин Tesseract** для Umi-OCR. Он хорошо читает русский, встроенный движок у меня с этим не справился.</p>
  <p id="xVqd">**Python** - чтобы запустить скрипт. Программировать не придётся.</p>
  <p id="r8e9">**Нейросеть** - Claude, ChatGPT, любая. Она напишет скрипт под ваши папки, промпт я дам ниже.</p>
  <p id="XHPS">**Obsidian** - там будет ваша база.</p>
  <p id="TQuF">**Ollama + Qwen** - это по желанию. Локальная нейросеть, которая потом поправит опечатки.</p>
  <p id="xOWP">Скриптов боятся многие, я это понимаю. Поэтому здесь не будет готовых файлов «скачай и запусти». Скрипт откроется вам целиком, и про любую строчку можно спросить ту же нейросеть.</p>
  <p id="N2lR">По Windows. На 10 и 11 работает всё. На Windows 7 (64-бит) пойдут Umi-OCR, Tesseract и Python 3.8, а вот Ollama туда не ставится. Сама я всё делала на 10-ке, версии для «семёрки» сверяла по документации, но не запускала.</p>
  <p id="sjeL">## Как я искала движок, который читает по-русски</p>
  <figure id="ACIC" class="m_custom">
    <img src="https://avatars.dzeninfra.ru/get-zen_doc/271828/pub_6ade410499791f7d2cf73817_6ade45ed3e43c31ff1b486e4/scale_1200" width="1200" />
  </figure>
  <p id="M0jW">Сначала попробовала встроенный в Umi-OCR движок PaddleOCR с русской моделью. На выходе набор букв. Программа и сама в себе сомневалась: уверенность 0.37-0.46 из единицы.</p>
  <p id="dB02">Потом мы перебрали 7 вариантов настроек: размер, ч/б, резкость, сглаживание. Дотянули до 0.74. Заголовки стали читаться, мелкий текст так и остался кашей.</p>
  <p id="pCGC">Поставили плагин Tesseract с русской моделью, и уверенность сразу прыгнула до 0.88. Пошли первые нормальные предложения.</p>
  <p id="fKZg">Так что не повторяйте мой путь, ставьте Tesseract сразу.</p>
  <p id="Ezm5">## Шаг 1. Ставим Umi-OCR</p>
  <p id="ESfI">Umi-OCR умеет работать как маленький сервер. Скрипт будет отправлять ему фото и получать обратно текст.</p>
  <p id="DapD">1. Откройте релизы: <a href="https://github.com/hiroi-sora/Umi-OCR/releases/latest" target="_blank">https://github.com/hiroi-sora/Umi-OCR/releases/latest</a> 2. Скачайте &#x60;Umi-OCR_Paddle_…7z.exe&#x60;. Если компьютер старый или стоит Windows 7, берите &#x60;Umi-OCR_Rapid_…7z.exe&#x60;, он дружит с большим числом процессоров.</p>
  <p id="Nxzv">3. Запустите скачанный файл. Он сам распакуется в папку, устанавливать ничего не надо.</p>
  <p id="Vryc">4. Откройте &#x60;Umi-OCR.exe&#x60;.</p>
  <p id="Ua3U">5. Проверьте сервер: откройте в браузере &#x60;http://127.0.0.1:1224/api/ocr/get_options&#x60;. Если видите длинный текст в фигурных скобках, всё в порядке.</p>
  <p id="aR7P">Если страница не открылась, загляните в Глобальные настройки, поставьте галочку «Дополнительно» и в разделе «Сервис» включите HTTP-сервис на порту 1224.</p>
  <p id="wJvS">## Шаг 2. Подключаем Tesseract и русский язык</p>
  <p id="kzw0">1. На странице <a href="https://github.com/qwedc001/tesseractOCR_umi_plugin/releases/latest" target="_blank">https://github.com/qwedc001/tesseractOCR_umi_plugin/releases/latest</a> в разделе Assets скачайте файл вида &#x60;win7_x64_TesseractOCR_best_v….7z&#x60;. Именно его, «Source code» не подойдёт.</p>
  <p id="1csB">2. Распакуйте в &#x60;…\Umi-OCR\UmiOCR-data\plugins\&#x60;. Внутри папки плагина должны сразу лежать &#x60;engine&#x60;, &#x60;site-packages&#x60; и &#x60;__init__.py&#x60;. Получилась лишняя вложенная папка - поднимите содержимое на уровень выше.</p>
  <p id="PUSB">3. Скачайте русскую модель <a href="https://github.com/tesseract-ocr/tessdata_best/raw/main/rus.traineddata" target="_blank">https://github.com/tesseract-ocr/tessdata_best/raw/main/rus.traineddata</a> и положите её в &#x60;…\plugins\win7_x64_TesseractOCR_best_…\engine\tessdata\&#x60;.</p>
  <p id="1Eoi">4. Перезапустите Umi-OCR. И вот тут я споткнулась дважды: крестик окна программу не закрывает, она уползает в трей у часов. Закрывать надо там, правой кнопкой по значку.</p>
  <p id="IWfy">5. Глобальные настройки → Распознавание текста → Текущий интерфейс → TesseractOCR → «Применить».</p>
  <p id="rFSI">6. Найдите «Нижний порог уверенности» и поставьте 30 вместо 60. С 60 плагин выкидывает половину текста с фото экрана.</p>
  <p id="16SV">Проверить просто: снова откройте ссылку из шага 1, там должно появиться &#x60;ocr.language.rus&#x60;.</p>
  <p id="Jj6P">## Шаг 3. Ставим Python</p>
  <p id="n9nd">Для Windows 10 и 11 берите Python 3.12: <a href="https://www.python.org/downloads/windows/" target="_blank">https://www.python.org/downloads/windows/</a> Для Windows 7 подойдёт только 3.8, это последняя версия, которая её поддерживает: <a href="https://www.python.org/downloads/release/python-3810/" target="_blank">https://www.python.org/downloads/release/python-3810/</a> (файл Windows x86-64 executable installer).</p>
  <p id="Z34f">На первом экране установщика обязательно отметьте галочку «Add python.exe to PATH». Без неё Windows просто не найдёт Python.</p>
  <p id="ZnS9">Проверка: Win+R, пишем &#x60;cmd&#x60;, в чёрном окне вводим</p>
  <p id="JGw3">&#x60;&#x60;&#x60;</p>
  <p id="M0Qx">python --version</p>
  <p id="G3pQ">&#x60;&#x60;&#x60;</p>
  <p id="hp86">Должна показаться версия, например Python 3.12.6.</p>
  <p id="fdlK">## Шаг 4. Просим нейросеть написать скрипт</p>
  <p id="3FVj">Скопируйте промпт ниже, вставьте в свою нейросеть и замените всё в квадратных скобках на свои пути. Путь к папке удобно копировать из адресной строки Проводника.</p>
  <p id="N8mA">Я проверила его отдельно: нейросеть, которая видела только этот текст и больше ничего, написала рабочий скрипт с первого раза.</p>
  <p id="TXGe">&#x60;&#x60;&#x60;</p>
  <p id="zpR8">Напиши мне Python-скрипт ocr_to_obsidian.py для Windows. Я новичок: объясняй простыми словами, как запустить.</p>
  <p id="QUXH">Задача: распознать текст с фото слайдов (сняты телефоном с экрана монитора, есть муар и блики) и сохранить каждое фото как заметку Obsidian.</p>
  <p id="bkni">Мои настройки (вынеси в начало скрипта):</p>
  <p id="pANH">- хранилище Obsidian: [ПУТЬ К ХРАНИЛИЩУ]</p>
  <p id="72aA">- папки с фото: [ПАПКА 1], [ПАПКА 2]</p>
  <p id="gv0J">- папка для заметок внутри хранилища: OCR/[НАЗВАНИЕ]</p>
  <p id="aQia">- версия Python: [3.12 или 3.8] - не используй синтаксис новее этой версии</p>
  <p id="SM8t">Распознавание - через Umi-OCR, он уже запущен:</p>
  <p id="e4r4">- HTTP API: POST http://127.0.0.1:1224/api/ocr, JSON {&quot;base64&quot;: ..., &quot;options&quot;: {...}}</p>
  <p id="VF4A">- движок - плагин TesseractOCR; ключи языков возьми из GET /api/ocr/get_options: включи ocr.language.rus и ocr.language.eng, остальные ocr.language.* выключи</p>
  <p id="4zpv">- опции: &quot;ocr.psm&quot;: true, &quot;tbpu.parser&quot;: &quot;none&quot;, &quot;data.format&quot;: &quot;dict&quot;</p>
  <p id="00un">- ответ: code 100 - успех, 101 - текста нет; data - список {text, score, box}</p>
  <p id="peb0">- запросы строго по одному, таймаут 300 с, 2 повтора; если Umi-OCR не отвечает - понятное сообщение и выход</p>
  <p id="3wUB">Обработка фото против муара (OpenCV), два прохода:</p>
  <p id="hYhh">1) уменьшить до 1600 px по длинной стороне (INTER_AREA), GaussianBlur 5x5, ч/б, CLAHE (clipLimit 2, сетка 8x8)</p>
  <p id="hviG">2) уменьшить до 2000 px, GaussianBlur sigma 1, ч/б, автоконтраст по 1-99 перцентилям</p>
  <p id="LqEO">Не отправляй фото в полном размере: на больших фото муар мешает и распознавание зависает.</p>
  <p id="MK2H">Склейка проходов:</p>
  <p id="DMBl">- переведи координаты box обратно в масштаб исходного фото</p>
  <p id="Md0P">- дубли - строки, чьи рамки перекрываются больше чем на 50%, или похожие по тексту (difflib &gt; 0.6); латинские двойники вроде MOXHO/МОЖНО считай одинаковыми. Из дублей оставь строку с большим числом букв, при равенстве - с большим score, затем - с кириллицей</p>
  <p id="brXh">- выброси строки, где меньше 3 букв и нет цифр</p>
  <p id="yRmh">- порядок: сверху вниз, в одном ряду слева направо; ряд - строки, чьи центры по высоте отличаются меньше чем на половину медианной высоты строки</p>
  <p id="GJqe">Заметка на каждое фото:</p>
  <p id="hwQq">- копия фото в [папка заметок]/attachments/&lt;имя папки с фото&gt;/</p>
  <p id="sCbd">- заметка [папка заметок]/&lt;имя папки с фото&gt;/&lt;имя фото&gt;.md</p>
  <p id="Gqt1">- frontmatter: created (дата изменения фото, YYYY-MM-DD HH:MM:SS), source: &quot;[[путь к копии от корня хранилища]]&quot;, original (полный путь к оригиналу), ocr_engine: Umi-OCR Tesseract, ocr_confidence (средний score), tags: [ocr]</p>
  <p id="aP2D">- дальше: # имя фото, ![[путь к копии от корня хранилища]], ## Текст, распознанный текст</p>
  <p id="bm8v">Правила:</p>
  <p id="x2qy">- оригиналы фото не изменять и не перемещать</p>
  <p id="TqYU">- уже готовые заметки пропускать, чтобы можно было прерывать и продолжать</p>
  <p id="9GX5">- режим проверки: python ocr_to_obsidian.py test - по 2 фото из каждой папки</p>
  <p id="1fxK">- печатать прогресс и писать лог в ocr_log.txt</p>
  <p id="8o3Y">- пути с кириллицей и пробелами должны работать</p>
  <p id="P0oM">- в конце напиши, какие библиотеки поставить через pip и как запустить</p>
  <p id="yQff">&#x60;&#x60;&#x60;</p>
  <p id="Je2a">Нейросеть пришлёт код и скажет, какие библиотеки поставить. У меня это была одна команда:</p>
  <p id="BVml">&#x60;&#x60;&#x60;</p>
  <p id="pDbT">pip install requests opencv-python numpy</p>
  <p id="o5rn">&#x60;&#x60;&#x60;</p>
  <p id="dvTt">Код сохраните в файл &#x60;ocr_to_obsidian.py&#x60;. Подойдёт и Блокнот: «Сохранить как», тип «Все файлы», кодировка UTF-8.</p>
  <p id="dTtw">## Шаг 5. Пробуем и запускаем на всё</p>
  <figure id="gn1q" class="m_custom">
    <img src="https://avatars.dzeninfra.ru/get-zen_doc/271828/pub_6ade410499791f7d2cf73817_6ade461e08dabf01050c37b0/scale_1200" width="1200" />
  </figure>
  <p id="Ks20">Откройте Umi-OCR. Потом зайдите в папку со скриптом, щёлкните по адресной строке Проводника, наберите &#x60;cmd&#x60; и нажмите Enter. Чёрное окно откроется сразу в нужной папке.</p>
  <p id="BCye">Сначала проба, по 2 фото из каждой папки:</p>
  <p id="L0o2">&#x60;&#x60;&#x60;</p>
  <p id="vlpc">python ocr_to_obsidian.py test</p>
  <p id="EFvV">&#x60;&#x60;&#x60;</p>
  <p id="GE5F">Загляните в Obsidian. Заметки на месте и выглядят нормально? Тогда на все фото:</p>
  <p id="udgg">&#x60;&#x60;&#x60;</p>
  <p id="LPI2">python ocr_to_obsidian.py</p>
  <p id="4j3g">&#x60;&#x60;&#x60;</p>
  <p id="MvGy">Прерывать можно спокойно, готовые заметки скрипт пропустит и продолжит дальше. Только сон компьютера на это время отключите.</p>
  <p id="7BZS">Где я застревала:</p>
  <p id="08I4">- **«Unable to create process…»** У меня так повёл себя Python 3.14, который стоял «по умолчанию» и оказался сломан. Помог запуск рабочего Python по полному пути: &#x60;&quot;C:\Python312\python.exe&quot; ocr_to_obsidian.py test&#x60;.</p>
  <p id="oYpk">- **Висит на первом же фото.** Было и такое, минут сорок. Память была забита на 97%, а фото уходили в полном размере. В промпте это уже учтено, но тяжёлые программы на время лучше закрыть.</p>
  <p id="ndyk">- **Пишет, что нет языка rus.** Значит, файл &#x60;rus.traineddata&#x60; лежит не там или Umi-OCR не перезапускали.</p>
  <p id="qnBg">- Любую ошибку из чёрного окна можно просто скопировать нейросети, она подскажет.</p>
  <p id="HWGR">## Муар, или почему фото экрана так плохо читаются</p>
  <figure id="Fv1I" class="m_custom">
    <img src="https://avatars.dzeninfra.ru/get-zen_doc/271828/pub_6ade410499791f7d2cf73817_6ade46d991554b2467a7b41b/scale_1200" width="1200" />
  </figure>
  <p id="V5Zc">С Tesseract стало лучше, но мелкий текст всё равно рассыпался. Стала разбираться.</p>
  <p id="6i6M">Когда снимаешь монитор телефоном, пиксели экрана и камеры накладываются, и по буквам идут радужные полосы. Это и есть муар. Для программы буквы в таких полосах выглядят как узор на ткани. Плюс блики, наклон, рамка монитора в кадре.</p>
  <p id="3HGb">Мы взяли 12 фото и прогнали их через разные способы обработки. Оценивали просто: сколько найдено слов, которые есть в русском или английском словаре.</p>
  <p id="kZ8D">И тут меня ждал сюрприз. Я была уверена, что фото надо увеличивать. Оказалось, всё ровно наоборот: на больших фото муар становится текстурой, и Tesseract на нём зависает. Лучший результат дало уменьшение до 1600 пикселей.</p>
  <figure id="JyHs" class="m_custom">
    <img src="https://avatars.dzeninfra.ru/get-zen_doc/271828/pub_6ade410499791f7d2cf73817_6ade46ee08dabf01050d96bb/scale_1200" width="1200" />
  </figure>
  <p id="n7SA">Цифры такие: обычный Tesseract нашёл 252 правильных слова, с локальным контрастом стало 332, а два прохода со склейкой дали 379. Плюс 50%.</p>
  <p id="d20q">Всё это уже зашито в промпт. Скрипт уменьшает фото и чуть размывает, чтобы полосы ушли. Поднимает локальный контраст (это CLAHE), тогда текст проступает даже под бликом. Читает каждое фото два раза с разной обработкой: что пропустил один проход, часто ловит второй. Потом склеивает строки, выкидывает дубли и мусор, а если одна и та же строка прочиталась латиницей и кириллицей, оставляет русскую.</p>
  <figure id="3R1a" class="m_custom">
    <img src="https://avatars.dzeninfra.ru/get-zen_doc/271828/pub_6ade410499791f7d2cf73817_6ade4700d9d1c158a9c0eaae/scale_1200" width="1200" />
  </figure>
  <p id="t9M6">На картинке мой тестовый слайд. Я его нарисовала и «сфотографировала» с муаром, бликом и наклоном. Обычный проход обрывает строки на середине. С обработкой строки дочитываются до конца, правда, с опечатками вроде «Оряпиналы» и «ложальная».</p>
  <p id="phtb">Мелкий бледный шрифт иногда всё равно теряется, а в конец заметки может прилететь мусор с краёв кадра. Для поиска по базе и вопросов к Claude этого хватает. С опечатками разберётся следующий шаг.</p>
  <p id="GvO3">## Шаг 6. Исправляем опечатки локальной нейросетью</p>
  <p id="qtZc">Этот шаг для Windows 10 (версия 22H2 и новее) и 11.</p>
  <p id="19nF">Ollama запускает нейросети прямо у вас на компьютере, интернет нужен только чтобы скачать модель. Модель Qwen хорошо знает русский и превратит «Оряпиналы» обратно в «Оригиналы».</p>
  <p id="mes8">Установщик: <a href="https://ollama.com/download/OllamaSetup.exe" target="_blank">https://ollama.com/download/OllamaSetup.exe</a> Хотите поставить не на диск C:, запустите его из PowerShell с полным путём:</p>
  <p id="bj5G">&#x60;&#x60;&#x60;</p>
  <p id="36Gc">&amp; &quot;D:\Загрузки\OllamaSetup.exe&quot; /DIR=&quot;D:\Programs\Ollama&quot;</p>
  <p id="IZDx">&#x60;&#x60;&#x60;</p>
  <p id="M8yS">У меня сначала не сработало &#x60;.\OllamaSetup.exe&#x60;: PowerShell был открыт совсем в другой папке. С полным путём всё пошло.</p>
  <p id="lDSG">Модели Ollama по умолчанию тоже кладёт на C:. Чтобы они легли, например, на E:, до скачивания выполните в PowerShell:</p>
  <p id="oiFa">&#x60;&#x60;&#x60;</p>
  <p id="UOss">[Environment]::SetEnvironmentVariable(&quot;OLLAMA_MODELS&quot;, &quot;E:\Ollama\models&quot;, &quot;User&quot;)</p>
  <p id="tEjk">&#x60;&#x60;&#x60;</p>
  <p id="5BlJ">Потом закройте Ollama через значок у часов (Quit), откройте её снова и запустите новое окно PowerShell.</p>
  <p id="Np4k">Модель берите под свою память. Для 8 ГБ:</p>
  <p id="hjMp">&#x60;&#x60;&#x60;</p>
  <p id="Qanw">ollama pull qwen3:4b</p>
  <p id="udVJ">&#x60;&#x60;&#x60;</p>
  <p id="UWbw">Для 16 ГБ:</p>
  <p id="PMMQ">&#x60;&#x60;&#x60;</p>
  <p id="15JA">ollama pull qwen3:8b</p>
  <p id="ifE0">&#x60;&#x60;&#x60;</p>
  <p id="yAzz">Запускать исправление лучше после того, как закончится распознавание. На 8 ГБ Umi-OCR и нейросеть вместе в память не влезут.</p>
  <p id="zAM3">Скрипт для исправления тоже получаем через промпт. Замените путь и отправьте нейросети:</p>
  <p id="UHKa">&#x60;&#x60;&#x60;</p>
  <p id="yCwn">Напиши Python-скрипт fix_ocr.py для Windows: он исправляет опечатки OCR в моих заметках Obsidian через локальную Ollama.</p>
  <p id="yTlm">- папка с заметками: [ПУТЬ К ПАПКЕ С ЗАМЕТКАМИ OCR]</p>
  <p id="AdJe">- модель: qwen3:4b, API http://127.0.0.1:11434/api/chat, &quot;stream&quot;: false, &quot;think&quot;: false, temperature 0</p>
  <p id="op53">- в каждой .md-заметке бери текст из раздела «## Текст»</p>
  <p id="lkMN">- промпт модели: исправь только ошибки распознавания (перепутанные буквы, латиница вместо кириллицы), удали мусорные строки, ничего не добавляй и не пересказывай, сохрани порядок строк, верни только текст</p>
  <p id="81Xc">- если ответ длиннее исходного больше чем в 1.3 раза - не применять, оставить оригинал</p>
  <p id="bvfU">- исправленный текст положить в «## Текст», исходный сохранить ниже в свёрнутом блоке &quot;&gt; [!quote]- Исходный текст OCR&quot;</p>
  <p id="asgb">- во frontmatter добавить ocr_fixed: &lt;модель&gt;; такие заметки при повторном запуске пропускать</p>
  <p id="4aT8">- режим проверки: python fix_ocr.py test - только 5 заметок</p>
  <p id="aw9D">- прогресс в консоль; в конце - как установить и запустить</p>
  <p id="pCwo">&#x60;&#x60;&#x60;</p>
  <p id="viyY">Если взяли 8b, поменяйте модель и в промпте.</p>
  <p id="Z4ds">Сначала &#x60;python fix_ocr.py test&#x60;, исправятся 5 заметок. Понравилось - &#x60;python fix_ocr.py&#x60; на все. На 8 ГБ это долго, я бы оставила на ночь.</p>
  <p id="7oEp">Бояться за текст не нужно. Исходник остаётся в той же заметке в свёрнутом блоке. А если модель начнёт сочинять от себя, скрипт её ответ просто не примет.</p>
  <p id="Q1P7">Этот шаг я как раз сейчас гоняю у себя, про результат напишу отдельно 😀</p>
  <p id="NWeU">## Как снимать в следующий раз</p>
  <figure id="7bpM" class="m_custom">
    <img src="https://avatars.dzeninfra.ru/get-zen_doc/271828/pub_6ade410499791f7d2cf73817_6ade472bb5289f5e983d317a/scale_1200" width="1200" />
  </figure>
  <p id="ipnu">После всего этого вывод у меня один: скриншот всегда лучше фото. На нём нет ни муара, ни бликов.</p>
  <p id="dBI6">На Windows 10 и 11:</p>
  <p id="qsO1">- **Win + PrtScn** сразу сохраняет весь экран в «Изображения → Снимки экрана». Нажал на каждом слайде - и всё.</p>
  <p id="twY8">- **Win + Shift + S** - кусок экрана в буфер обмена.</p>
  <p id="NLZQ">- **Win + Alt + R** - запись видео активного окна через Xbox Game Bar.</p>
  <p id="Xn3J">У меня в тот же день отказался работать Win + Shift + S: окно появлялось, а снимок не сохранялся. Проверка такая: Win+R и ввести &#x60;ms-screenclip:&#x60; (слитно, с двоеточием в конце). Если вылезает «нужно новое приложение», значит, «Ножницы» сломаны, их надо переустановить из Microsoft Store.</p>
  <p id="anlL">На Windows 7: PrtScn кладёт экран в буфер, «Ножницы» лежат в меню Пуск.</p>
  <p id="SiLS">А если всё-таки снимаете телефоном, держите его ровно напротив экрана, выключите верхний свет и не трогайте зум.</p>
  <p id="NKYC">## Ссылки</p>
  <p id="rdn6">- Umi-OCR: <a href="https://github.com/hiroi-sora/Umi-OCR" target="_blank">https://github.com/hiroi-sora/Umi-OCR</a> - Плагин Tesseract: <a href="https://github.com/qwedc001/tesseractOCR_umi_plugin" target="_blank">https://github.com/qwedc001/tesseractOCR_umi_plugin</a> - Русская модель: <a href="https://github.com/tesseract-ocr/tessdata_best" target="_blank">https://github.com/tesseract-ocr/tessdata_best</a> - Python: <a href="https://www.python.org/downloads/windows/" target="_blank">https://www.python.org/downloads/windows/</a> - Ollama: <a href="https://docs.ollama.com/windows" target="_blank">https://docs.ollama.com/windows</a> За один день папка фото, которая просто лежала, стала базой, по которой можно искать. Ничего не платила, никуда ничего не загружала, руками не перепечатала ни строчки. Граблей собрала штук шесть, зато теперь вы знаете, где они лежат.</p>
  <p id="R7PE">Сохраните, пригодится после следующей конференции. А больше таких разборов у меня в канале «<strong>Кристина о нейронках</strong>». Там же я выложила свой скилл для Клода, который превращает фото в текст: <a href="https://t.me/+mlap2Uenlk43M2Ey" target="_blank">https://t.me/+mlap2Uenlk43M2Ey</a></p>

]]></content:encoded></item></channel></rss>