Так вот, здесь представлены скрины моего кода и как это происходит. Последние 2 фотографии из моего датасета. Первая это входные данные, последняя желаемый результат.
Сейчас я поставил датасет на 10 фотографий, и обрабатывал он их около 10 мину (400 эпох это слишком много, но мне нужно для понимания того как работает алгоритм обучения)
После я конечно сменю количество эпох до 50, когда удостоверюсь что обучение работает как надо
Вот чем я занимался последние 2 месяца (и да, я не бездельничал):
Как я уже писал ранее я изучал нейронные сети. И решил запилить проектик с использованием ИИ.
Это будет приложение с говорящим названием VTubersLife, созданное специально для Витубинга.
Почему именно оно? На рынке сейчас только 1 конкурирующий аналог Vtubers Studio. Я его потыкал и понял что дерьмо полнейшее. И решил создать приложение под себя (Да я хочу стать аниме девочкой_).
И начал разработку. Сейчас немного о этапах разработки:
• Разработал первый прототип приложения, пока только визуальный. Теперь это не выглядит по конченному.
• Накидал связь с бд
• Сделал два сайта: один — главный, с информацией и загрузкой, второй — для настроек аккаунта.
И тут еще решил усложнить себе задачу создав мобильное приложение.
А сейчас чуть конкретнее по каждому пункту
Как я уже писал ранее я изучал нейронные сети. И решил запилить проектик с использованием ИИ.
Это будет приложение с говорящим названием VTubersLife, созданное специально для Витубинга.
Почему именно оно? На рынке сейчас только 1 конкурирующий аналог Vtubers Studio. Я его потыкал и понял что дерьмо полнейшее. И решил создать приложение под себя (Да я хочу стать аниме девочкой_).
И начал разработку. Сейчас немного о этапах разработки:
• Разработал первый прототип приложения, пока только визуальный. Теперь это не выглядит по конченному.
• Накидал связь с бд
• Сделал два сайта: один — главный, с информацией и загрузкой, второй — для настроек аккаунта.
И тут еще решил усложнить себе задачу создав мобильное приложение.
А сейчас чуть конкретнее по каждому пункту
Начнем с приложения:
Основная идея:
Суть в том, чтобы превратить любую камеру (веб-камеру, USB или поток по Wi-Fi) в мощный motion-трекер. Приложение в реальном времени будет брать видеопоток и с помощью нейросети считывать движения человека, чтобы перенести их на 3D-аватарку. Звучит просто, но за этой простотой скрывается просто адский бекенд.
Актуализация:
Да, просто отслеживать движения по точкам — уже не новинка. Поэтому я хочу добавить поддержку полноценных 3D-моделей с интеграцией в виртуальное пространство.
Сейчас такой уровень погружения достигается только с помощью дорогущих VR-трекеров (типа Vive Trackers) или профессиональных Motion Capture-систем. Да, существующие нейросети это умеют, но они либо платные, либо требуют серверов за космические деньги. А я же хочу сделать это практически бесплатно.
Что еще будет крутого (помимо основной фичи):
Галерея эффектов и масок, в интегрированном магазине моделей. Сейчас эти модели покупают у художников и риггеров, а тут будет целый магазин с кучей моделей, где люди могут покупать и продавать модельки. Важный момент это гарантия от приложения что покупателя не кинут на деньги. Таким образом приложение превратится в целую площадку что превлечет много народу
Эмоции во время стрима. Это не просто маска, это именно эффекты на видео, что добавляют разнообразия.
В планах добавить предметы в виртуальную область, чтобы персонаж мог держать например меч, или оружие и тд. (но эт еще не скоро).
Но чет я замечтался. Пока я только приготовил макет для реализации основной функции приложения (а именно обработка видео потока). И то нужно допиливать бек. Прикрепил скрины самого приложения. В нем будут переводы на разные языки (русский, английский, немецкий, китайский, японский, испанский, французский), а так же выбор тем, они показаны на скринах.
Основная идея:
Суть в том, чтобы превратить любую камеру (веб-камеру, USB или поток по Wi-Fi) в мощный motion-трекер. Приложение в реальном времени будет брать видеопоток и с помощью нейросети считывать движения человека, чтобы перенести их на 3D-аватарку. Звучит просто, но за этой простотой скрывается просто адский бекенд.
Актуализация:
Да, просто отслеживать движения по точкам — уже не новинка. Поэтому я хочу добавить поддержку полноценных 3D-моделей с интеграцией в виртуальное пространство.
Сейчас такой уровень погружения достигается только с помощью дорогущих VR-трекеров (типа Vive Trackers) или профессиональных Motion Capture-систем. Да, существующие нейросети это умеют, но они либо платные, либо требуют серверов за космические деньги. А я же хочу сделать это практически бесплатно.
Что еще будет крутого (помимо основной фичи):
Галерея эффектов и масок, в интегрированном магазине моделей. Сейчас эти модели покупают у художников и риггеров, а тут будет целый магазин с кучей моделей, где люди могут покупать и продавать модельки. Важный момент это гарантия от приложения что покупателя не кинут на деньги. Таким образом приложение превратится в целую площадку что превлечет много народу
Эмоции во время стрима. Это не просто маска, это именно эффекты на видео, что добавляют разнообразия.
В планах добавить предметы в виртуальную область, чтобы персонаж мог держать например меч, или оружие и тд. (но эт еще не скоро).
Но чет я замечтался. Пока я только приготовил макет для реализации основной функции приложения (а именно обработка видео потока). И то нужно допиливать бек. Прикрепил скрины самого приложения. В нем будут переводы на разные языки (русский, английский, немецкий, китайский, японский, испанский, французский), а так же выбор тем, они показаны на скринах.
А теперь про мобилку:
Само приложение представляет из себя приложение-помощник. Что будет выводить видео поток по wifi, а приложение на пк будет его улавливать и считывать. По мимо подключения по wifi оно так же будет работать и через usb, это ускорит скорость обработки видео
Само приложение представляет из себя приложение-помощник. Что будет выводить видео поток по wifi, а приложение на пк будет его улавливать и считывать. По мимо подключения по wifi оно так же будет работать и через usb, это ускорит скорость обработки видео
В общем приложение находится в активной стадии разработки. Я буду чаще публиковать новости о нем. И очень хочу его закончить
Ах да, чуть не забыл. Раз уж я в 9 классе то нужно продолжать подготовку в ОГЭ по информатике. Я буду продолжать скидывать сюда задачи и способы их решения, а предыдущие задачи и решения здесь
Решение:
1. Простейшим умножением на 2 по разрядам получаем 102
2.
Пояснение, функция int может переводить строки в числа, в разных СС в ДЕСЯТИЧНУЮ систему счисления. Имеет формат int(*СТРОКА числа*, основание СС), например ("101010", 2). Мы переводим число 101010 из 2 в 10.
Ответ: 102
1. Простейшим умножением на 2 по разрядам получаем 102
2.
print(int(str(1100110), 2))
Пояснение, функция int может переводить строки в числа, в разных СС в ДЕСЯТИЧНУЮ систему счисления. Имеет формат int(*СТРОКА числа*, основание СС), например ("101010", 2). Мы переводим число 101010 из 2 в 10.
Ответ: 102
Решение:
Представим число 100 в виде суммы степеней двойки: 100 = 64 + 32 + 4. Теперь переведем каждое из слагаемых в двоичную систему счисления и сложим результаты: 64 = 100 0000; 32 = 10 0000; 4 = 100. Следовательно, 100 = 110 0100. Ответ: 3
Однако есть решение и с помощью кода:
Пояснение: В предыдущем задание мы уже использовали bin(), здесь же мы еще добавляем функцию count(), которая принимает в себя СТРОКУ нужного нам значения
Представим число 100 в виде суммы степеней двойки: 100 = 64 + 32 + 4. Теперь переведем каждое из слагаемых в двоичную систему счисления и сложим результаты: 64 = 100 0000; 32 = 10 0000; 4 = 100. Следовательно, 100 = 110 0100. Ответ: 3
Однако есть решение и с помощью кода:
print(bin(100)[2:].count('1'))Пояснение: В предыдущем задание мы уже использовали bin(), здесь же мы еще добавляем функцию count(), которая принимает в себя СТРОКУ нужного нам значения
Решение:
Переведем все числа в восьмеричную систему счисления:
1. 5510 = 678, сумма цифр — 6 + 7 = 158;
2. 8310 = 1238 , сумма цифр — 1 + 2 + 3 = 68;
3. 9110 = 1338 , сумма цифр — 1 + 3 + 3 = 78.
Таким образом, наименьшей суммой цифр в восьмеричной записи числа является число 6.
Ответ: 6.
Или на языке python
Пояснение: Есть 2 массива: numbers, содержащий исходные числа, и answer, в который буду помещаться уже сумма цифр изначальных чисел. После мы перебираем числа из numbers, и перебираем в них цифры, складывая их, помещаем результат в массив answer. И в ответе находим минимальное значение.
Важно если до этого мы переводили из 10 в 2 с помощью
Переведем все числа в восьмеричную систему счисления:
1. 5510 = 678, сумма цифр — 6 + 7 = 158;
2. 8310 = 1238 , сумма цифр — 1 + 2 + 3 = 68;
3. 9110 = 1338 , сумма цифр — 1 + 3 + 3 = 78.
Таким образом, наименьшей суммой цифр в восьмеричной записи числа является число 6.
Ответ: 6.
Или на языке python
numbers = [55, 83, 91]
answer = []
for numb in numbers:
answer.append(sum(int(digit) for digit in oct(numb)[2:]))
print(min(answer))
Пояснение: Есть 2 массива: numbers, содержащий исходные числа, и answer, в который буду помещаться уже сумма цифр изначальных чисел. После мы перебираем числа из numbers, и перебираем в них цифры, складывая их, помещаем результат в массив answer. И в ответе находим минимальное значение.
Важно если до этого мы переводили из 10 в 2 с помощью
bin(), то для перевода из 10 в 8 используется oct(), имеющая такой же синтаксис
