Як впровадити AI-генерацію 3D-моделей з фото в мобільний додаток

Клієнт хоче додати в додаток можливість сканувати об'єкт однією камерою і одразу дивитися його 3D-модель в AR. Без LiDAR, без фотограмметрії — тільки нейромережі. Завдання складне: на пристрої мало пам'яті, а сервер додає затримки. Ми вирішуємо його комбінацією on-device глибини та серверної реконст

Розробка та підтримка будь-яких видів мобільних додатків:

Інформаційні та розважальні мобільні програми
Новинки, ігри, довідники, онлайн-каталоги, погодні, фітнес та здоров'я, туристичні, освітні, соціальні мережі та месенджери, квіз, блоги та подкасти, форуми, агрегатори
Мобільні програми електронної комерції
Інтернет-магазини, B2B-додатки, маркетплейси, онлайн-обмінники, кешбек-сервіси, біржі, дропшиппінг-платформи, програми лояльності, доставка їжі та товарів, платіжні системи
Мобільні програми для управління бізнес-процесами
CRM-системи, ERP-системи, управління проектами, інструменти для команди продажів, облік фінансів, управління виробництвом, логістика та доставка, управління персоналом, системи моніторингу даних
Мобільні програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, платформи надання електронних послуг, платформи кешбеку, відеохостинги, тематичні портали, платформи онлайн-бронювання та запису, платформи онлайн-торгівлі

Це лише деякі з типів мобільних додатків, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 1734 послуг
Як впровадити AI-генерацію 3D-моделей з фото в мобільний додаток
Складний
~2-4 тижні

Наші компетенції:

Часті запитання

Останні роботи

  • image_mobile-applications_feedme_467_0.webp
    Розробка мобільного додатка для компанії FEEDME
    896
  • image_mobile-applications_xoomer_471_0.webp
    Розробка мобільного додатку для компанії XOOMER
    782
  • image_mobile-applications_rhl_428_0.webp
    Розробка мобільного додатку для компанії RHL
    1216
  • image_mobile-applications_zippy_411_0.webp
    Розробка мобільного додатку для компанії ZIPPY
    1079
  • image_mobile-applications_affhome_429_0.webp
    Розробка мобільного додатку для компанії Affhome
    1003
  • image_mobile-applications_flavors_409_0.webp
    Розробка мобільного додатку для компанії FLAVORS
    597

Клієнт хоче додати в додаток можливість сканувати об'єкт однією камерою і одразу дивитися його 3D-модель в AR. Без LiDAR, без фотограмметрії — тільки нейромережі. Завдання складне: на пристрої мало пам'яті, а сервер додає затримки. Ми вирішуємо його комбінацією on-device глибини та серверної реконструкції, підбираючи архітектуру під залізо та сценарій.

Класичні підходи вимагають десятків фотографій або спеціального обладнання. Нейромережева генерація з одного фото — реальне завдання, але з суттєвими обмеженнями щодо якості при повністю локальній обробці. Наш досвід — 5+ років в мобільному AR/ML — дозволяє обрати оптимальний баланс. Якщо ви зіткнулися з аналогічним завданням, зв'яжіться з нами — ми допоможемо підібрати пайплайн під ваші вимоги.

Як вибрати архітектуру генерації?

Повністю на пристрої — легкі моделі типу DepthPro Core ML для depth estimation + point cloud, або One-2-3-45 у мобільній редакції. Отримуємо грубу 3D-структуру, придатну для AR-прев'ю, але не для експорту в професійні додатки. On-device depth у 10 разів швидше сервера, але точність нижча в 2 рази за метрикою Chamfer Distance.

Гібрид — на пристрої робимо depth map та початкову сегментацію об'єкта, на сервері — повноцінна 3D-реконструкція через Zero123++, One-2-3-45 або TripoSR. Сервер повертає .obj або .glb файл. Затримка 0.5–1 с додатково, але якість — як у десктопних рішень.

LiDAR-доповнений — на iPhone 12 Pro+ та iPad Pro є LiDAR сканер. ARKit + ARMeshAnchor дозволяє отримати real mesh сцени. Комбінація LiDAR mesh + текстура з камери + AI texture inpainting дає якісний результат без сервера. Це найнадійніший варіант для iOS.

Чому LiDAR дає найкращий результат?

На iPhone з LiDAR найнадійніший варіант — ARKit:

let configuration = ARWorldTrackingConfiguration() configuration.sceneReconstruction = .meshWithClassification // В ARSession delegate func session(_ session: ARSession, didUpdate anchors: [ARAnchor]) { for anchor in anchors.compactMap({ $0 as? ARMeshAnchor }) { let geometry = anchor.geometry // geometry.vertices, geometry.faces, geometry.normals — готовий меш exportMesh(geometry: geometry, transform: anchor.transform) } } 

ARMeshAnchor.geometry.verticesARGeometrySource з буфером Metal. Експорт в .obj:

func exportToOBJ(geometry: ARMeshGeometry, transform: simd_float4x4) -> String { var obj = "" let vertices = geometry.vertices // Ітеруємо MTLBuffer напряму через withUnsafeBytes vertices.buffer.contents().withMemoryRebound(to: SIMD3<Float>.self, capacity: vertices.count) { ptr in for i in 0..<vertices.count { let v = ptr[i] let world = transform * SIMD4<Float>(v.x, v.y, v.z, 1) obj += "v \(world.x) \(world.y) \(world.z)\n" } } // Аналогічно для faces (indices) return obj } 

Текстурування меша — проєктуємо відеокадр на меш через UV-mapping. Це окреме завдання; без нього меш буде сірим.

Які складнощі виникають при on-device обробці?

On-device depth estimation потребує ретельного калібрування та обробки EXIF-даних. Наприклад, ігнорування фокусної відстані спотворює depth map. Ми завжди читаємо focal length з метаданих кадру. Також складнощі виникають з відбиттями та скляними поверхнями: depth дає невірні значення, тому застосовуємо сегментацію та AI-inpainting на сервері. Монотонні поверхні без текстури — ще одна проблема: накладаємо AI-згенеровану текстуру для реалістичного вигляду.

Порівняння підходів

Критерій On-device Depth LiDAR ARKit Сервер (TripoSR)
Якість ★★ (point cloud) ★★★★ (mesh + текстура) ★★★★★ (готовий mesh)
Швидкість Миттєво Миттєво 0.5–2 с
Офлайн Так Так Ні
Підтримка пристроїв Будь-які iPhone 12 Pro+ Будь-які з інтернетом

Типові помилки та як їх уникнути

  1. Ігнорування фокусної відстані — без EXIF depth map спотворюється. Читаємо focal length з метаданих.
  2. Відбиття та скло — depth дає невірні значення. Застосовуємо сегментацію та inpainting.
  3. Монотонні поверхні — без текстури меш погано виглядає. Накладаємо AI-згенеровану текстуру.
  4. Розмір моделі — dense mesh може важити >100 МБ. Застосовуємо квадричне спрощення (decimation) до 50k полігонів.

Що входить у роботу

  • Документація по інтеграції API.
  • Вихідний код модуля (Swift / Kotlin).
  • Тестовий білд з демонстрацією.
  • Навчання команди замовника.
  • Підтримка 3 місяці після запуску.

Вартість проєкту розраховується індивідуально. Ми гарантуємо прозорість: підписуємо специфікацію та фіксуємо етапи. Економія часу на 3D-моделювання — до 80% за рахунок автоматизації.

Процес роботи

  1. Аналіз вимог: сценарій, цільові пристрої, необхідність текстури.
  2. Вибір архітектури (on-device / гібрид / LiDAR).
  3. Розробка пайплайну захоплення та обробки кадру.
  4. Інтеграція depth estimation (DepthPro / ARKit) або серверного API.
  5. Вилучення меша (Poisson / Marching Cubes) або використання ARMeshAnchor.
  6. Накладення текстури (проєкція кадру або AI inpainting).
  7. AR-прев'ю через RealityKit / ARKit.
  8. Експорт у формати: USDZ, glTF, OBJ.
  9. Оптимізація продуктивності та тестування на складних об'єктах.

Орієнтири за термінами

Варіант Термін
LiDAR-сканування + експорт (iOS) 3–5 тижнів
On-device depth + сервер (iOS+Android) 8–10 тижнів
Повний пайплайн + AR-прев'ю + експорт 8–14 тижнів

Отримайте консультацію — зв'яжіться для оцінки вашого проєкту. Докладніше про технологію LiDAR та ARKit на офіційних сторінках.