<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Datameister Blog</title>
    <link>https://datameister.ai/blog/</link>
    <description>Technical articles on 3D generative AI, computer vision, MLOps, and visual intelligence from the Datameister research and deployment lab.</description>
    <language>en</language>
    <lastBuildDate>Thu, 11 Jun 2026 07:30:00 GMT</lastBuildDate>
    <atom:link href="https://datameister.ai/blog/feed.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Datameister #1 in Intrinsic's robotic-manipulation challenge qualifier</title>
      <link>https://datameister.ai/blog/intrinsic-ai-for-industry-challenge-qualifying-first/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/intrinsic-ai-for-industry-challenge-qualifying-first/</guid>
      <pubDate>Thu, 11 Jun 2026 07:30:00 GMT</pubDate>
      <dc:creator>Ruben Verhack</dc:creator>
      <category>Lab</category>
      <category>Models &amp; Infrastructure</category>
      <description>Datameister ranked #1 of ~160 teams in the Intrinsic AI for Industry Challenge qualifier, a robotic cable-insertion benchmark judged by Google DeepMind and NVIDIA.</description>
      <content:encoded><![CDATA[<figure class="post-figure"><img src="https://datameister.ai/blog/intrinsic-ai-for-industry-challenge-qualifying-first/thumbnail_lab_datameister_1_in_intrinsic_s_robotic_manipulation_qualifier_dm_website.png" alt="Datameister #1 in Intrinsic&#39;s robotic-manipulation challenge qualifier"></figure>
<blockquote>
<p><strong>TL;DR</strong> Datameister is first on the <a href="https://www.intrinsic.ai/events/ai-for-industry-challenge">Intrinsic AI for Industry Challenge</a> qualifying leaderboard with a score of 293.38, out of roughly 160 teams. The challenge is a cable-insertion benchmark in simulation, run by Intrinsic with Open Robotics, Google DeepMind, and NVIDIA on the evaluation committee. The qualifying window was two and a half months. We landed first place in three weeks.</p>
<p>The skill on test is <strong>precision cable insertion</strong> for electronics assembly: a Universal Robots UR5e cobot with three wrist-mounted cameras and a force-torque sensor picks flexible cables and inserts connectors into a server-tray workcell. Our entry composes a sequence of step-specific policies on top of production-grade perception and 3D-AI primitives from the DM Library. Each step uses the tool that performs best on that specific sub-problem, evaluated empirically.</p>
<p>Result: first on the qualifying leaderboard of roughly 160 teams, ahead of a field that includes well-funded competitors with millions in venture funding.</p>
<p>Applications: cable assembly and connector insertion for electronics manufacturing, deformable-object manipulation, server-tray wiring, manipulation skill catalog for industrial robotics integrators.</p>
</blockquote>
<p><img src="https://datameister.ai/blog/intrinsic-ai-for-industry-challenge-qualifying-first/cable-insertion-gazebo-thumb.png" alt="Cover: a UR5e arm with a Robotiq gripper holds an orange-jacketed cable connector above a server-tray fixture in the simulation used by the Intrinsic AI for Industry Challenge.">
<em>Our entry to the AIC: a Universal Robots UR5e inserting cables into a server-tray fixture, scored on success, precision, safety, and cycle time. (source: Datameister)</em></p>
<p>Electronics manufacturing has been one of the last big holdouts against full robotic assembly. Most steps on a modern line are automated. Cables and connectors are not. Server trays, network gear, and consumer electronics still end up with people handling the wiring step by step, because the physics of flexible cables and the tolerances of connector insertion are genuinely hard for a robot to get right. Intrinsic ran the AI for Industry Challenge to attack exactly that bottleneck, with a $180,000 prize pool and a benchmark that anyone could enter. Datameister is first on the qualifying leaderboard. This post walks through what the challenge is, the skill on test, how we approached it, and what comes next.</p>
<h2>What the AI for Industry Challenge is</h2>
<p>The <a href="https://www.intrinsic.ai/events/ai-for-industry-challenge">AI for Industry Challenge</a> is an open competition run by <a href="https://www.intrinsic.ai/">Intrinsic</a> (an Alphabet company) together with <a href="https://www.openrobotics.org/">Open Robotics</a>. The evaluation committee includes Francesco Nori (Director of Robotics, Google DeepMind), Amit Goel (Director of Product Management, NVIDIA), Geoffrey Biggs (CTO, Open Robotics), Susanne Nördinger (Universal Robots), Zhe Shi (Foxconn), and Wendy Tan White (CEO, Intrinsic). $180,000 in prizes, three phases:</p>
<ul>
<li><strong>Qualification (March 2 to mid-May 2026):</strong> train and submit a cable-insertion model evaluated in simulation. Roughly 2.5 months. Around 160 teams entered. We just passed this phase.</li>
<li><strong>Phase 1 (mid-May to August 2026):</strong> the top 30 teams get access to Intrinsic Flowstate and the Intrinsic Vision Model to build out a full cable-handling solution.</li>
<li><strong>Phase 2 (August to September 2026):</strong> the top 10 teams deploy their solutions remotely to a physical workcell at Intrinsic&#39;s HQ in California for real-world evaluation.</li>
</ul>
<p>We were one of the 30 teams that advanced to Phase 1, with the highest score on the qualifying leaderboard.</p>
<h2>The skill on test: precision cable insertion</h2>
<p>The skill the AIC measures is what Datameister calls <strong>precision cable insertion</strong> for electronics assembly. The participant toolkit specifies the hardware: a <a href="https://www.universal-robots.com/products/ur5e/">Universal Robots UR5e</a> cobot, a <a href="https://robotiq.com/products/hand-e-adaptive-robot-gripper">Robotiq Hand-E</a> gripper, an Axia80 force-torque sensor on the wrist, and three wrist-mounted Basler cameras streaming uncompressed RGB at 20 fps. The task is to pick flexible cables and insert their connectors into a server-tray fixture, generalising across plug types and port configurations.</p>
<p><img src="https://datameister.ai/blog/intrinsic-ai-for-industry-challenge-qualifying-first/cable-insertion-gazebo.gif" alt="Animation: the simulation of our entry. The UR5e arm picks a cable from the workcell and inserts the connector into the server-tray fixture, with the wrist cameras streaming the scene that drives perception.">
<em>Our entry running the precision cable-insertion task end to end. The arm relies on the wrist-mounted cameras and the F/T sensor; ground-truth poses are off during scored evaluation. (source: Datameister)</em></p>
<p>Submissions are scored by an automated pipeline on four criteria, per <a href="https://www.intrinsic.ai/events/ai-for-industry-challenge">the challenge rules</a>: task success (a binary per insertion), precision (how close the connector lands to its target), safety (penalties for collisions, excessive forces, and excessive jerk on cables or connectors), and efficiency (cycle time for the full set of inserts). The single qualifying score is the weighted combination.</p>
<h2>How we approached precision cable insertion</h2>
<p>The harder a robotics problem looks end-to-end, the more it rewards being decomposed. Cable insertion is genuinely a collection of distinct sub-problems, each with its own properties and its own active state of the art.</p>
<p>Our entry composed a sequence of step-specific policies on top of the DM Library, with each step picking the right tool for that step. What runs underneath each step is whatever performs best on that specific sub-problem, evaluated empirically. The composition is what makes the skill, not any one policy choice underneath it.</p>
<p>Four things made three weeks possible:</p>
<ul>
<li><strong>We started from production-grade primitives.</strong> The perception and 3D-AI building blocks in our DM Library have been live and battle-tested across customer projects for years. We did not have to build a perception stack from scratch under tournament time pressure. We composed on top of one.</li>
<li><strong>We picked the right tool per sub-problem rather than committing to one stack.</strong> Each sub-problem gets evaluated on its own merits, and the policy that wins on that sub-problem is what runs there.</li>
<li><strong>We had the internal process to move research into a working primitive on a short timeline.</strong> Fresh-from-arXiv research moves fast and is rough around the edges. The way we work in our monorepo (see <a href="https://datameister.ai/blog/the-monorepo-as-ai-factory">The Monorepo as AI Factory</a>) lets us bring new ideas into the library quickly while keeping the existing primitives stable. New techniques get evaluated per sub-problem and only land in the library when they earn their place.</li>
<li><strong>We evaluated step by step.</strong> Each sub-problem had its own metric and its own bar. That is the discipline that beats throwing a single monolithic model at the whole task and hoping.</li>
</ul>
<p>The underlying point: skills are what the buyer talks about, primitives are implementation, and the right move is to compose skills out of primitives where each primitive is the best available tool for its job. The AIC is the first public test that confirms it.</p>
<h2>The result: first on the qualifying leaderboard</h2>
<p><img src="https://datameister.ai/blog/intrinsic-ai-for-industry-challenge-qualifying-first/intrinsic-leaderboard.png" alt="Leaderboard: the Intrinsic AI for Industry Challenge qualifying ranking, with Datameister first at 293.38, ahead of Kinetic Nomads, Out of Control, Robotics@FTN and the rest of the top ten.">
<em>Qualifying-phase leaderboard, top ten of roughly 160 teams. (leaderboard data: Intrinsic AI for Industry Challenge; chart: Datameister)</em></p>
<p>First place at 293.38 on the qualifying leaderboard. Roughly 160 teams entered qualifying; the top 30 advance to Phase 1, and we go in with the highest score. Three weeks of focused work against a two-and-a-half-month window, in a field that includes well-funded competitors with millions of euros in venture funding.</p>
<p>The score margin to second is small (about one point), which we read as a signal that the other top teams are doing serious work too. The standing matters mostly for the next phase; what matters more is how this composes-on-top-of-primitives approach extends to the physical workcell.</p>
<h2>What&#39;s next: Phase 1 and the physical workcell</h2>
<p>Phase 1 starts immediately. Top 30 teams gain access to <a href="https://www.intrinsic.ai/flowstate">Intrinsic Flowstate</a> and the <a href="https://www.intrinsic.ai/intrinsic-vision-model">Intrinsic Vision Model</a> to build out a complete cable-handling solution on top of their qualifying models. Phase 1 winners are announced by August 4, 2026. The top 10 from there move to Phase 2, where solutions are remotely deployed to a real UR5e workcell at Intrinsic&#39;s HQ in California, with the final results announced by September 8, 2026.</p>
<p>We will write up the full technical story once the challenge concludes.</p>
<h2>Working with us</h2>
<p>Precision cable insertion is one skill in a growing catalog we build for European robotics integrators, on standardized off-the-shelf hardware (the UR5e here, Franka and AGIBOT elsewhere). We take on the hard part between a fresh model and a manipulation skill that runs reliably on a real line, so an integrator can put cognitive robots to work without standing up an in-house AI research team. The integrator keeps the IP for whatever is specific to their use case and data.</p>
<p>If you are an integrator, OEM, or manufacturer trying to get AI-driven manipulation running on real hardware, and the path from research to a reliable deployed skill is your bottleneck, we are glad to talk.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Autonomous from Scratch: Building Datameister's Physical AI Foundation</title>
      <link>https://datameister.ai/blog/autonomous-from-scratch-physical-ai-foundation/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/autonomous-from-scratch-physical-ai-foundation/</guid>
      <pubDate>Wed, 03 Jun 2026 08:00:00 GMT</pubDate>
      <dc:creator>Thibaud Despriet</dc:creator>
      <category>Lab</category>
      <category>Perception</category>
      <category>Models &amp; Infrastructure</category>
      <description>How Datameister built an autonomous navigation and data-capture stack from scratch on a Unitree GO2, NVIDIA Jetson, and Livox MID-360, unified under ROS 2.</description>
      <content:encoded><![CDATA[<figure class="post-figure"><img src="https://datameister.ai/blog/autonomous-from-scratch-physical-ai-foundation/thumbnail_lab_autonomous_from_scratch_dm_website.png" alt="Autonomous from Scratch: Building Datameister&#39;s Physical AI Foundation"></figure>
<blockquote>
<p><strong>TL;DR</strong> We built and operate an <strong>autonomous navigation and data-capture skill</strong> running end-to-end on a <a href="https://www.unitree.com/go2/">Unitree GO2</a>, an NVIDIA Jetson, and a <a href="https://www.livoxtech.com/mid-360">Livox MID-360</a>. Unified under a single ROS 2 framework, the robot navigates a site autonomously, builds a persistent 3D map of what it sees, captures the run as a replayable bag, and lets you watch it live from a browser, all without a tethered laptop.</p>
<p>This is the on-robot side of Datameister&#39;s <strong>Physical AI</strong> work, paired with the Datameister Platform on the training side. The quadruped is the mobile base, the legs, running in parallel with our stationary cobot manipulation work. The two converge into mobile manipulators and eventually humanoid platforms. Every run also generates the real-world data our training pipeline needs.</p>
<p>Result: a Physical AI stack we own end-to-end, ready to drive autonomous inspection runs today and to feed the manipulation skills coming next.</p>
<p>Applications: autonomous inspection patrol, indoor and outdoor 3D mapping, digital twin capture, real-to-sim data generation, repeatable site walkthroughs, mobile-manipulator roadmap, foundation for humanoid platforms.</p>
</blockquote>
<p>Robots are stepping out of the lab. Quadrupeds are scanning construction sites, humanoids are picking parts on factory floors, mobile manipulators are running restocking shifts in retail. The hardware is moving faster than the software underneath it, and most teams trying to deploy these systems into real environments are stuck on the same gap: the autonomy stack between perception and reliable, deployable action does not exist as a product you can buy.</p>
<p>That stack is what makes the rest of the <strong>Physical AI</strong> work possible: the manipulation skills, the deployment feedback loops, the cognitive work above. It is also the kind of stack a hardware-agnostic robotics integrator would build if they had an in-house AI research team. We built ours from scratch on a <a href="https://www.unitree.com/go2/">Unitree GO2</a>, an NVIDIA Jetson, and a <a href="https://www.livoxtech.com/mid-360">Livox MID-360</a>, unified under a single ROS 2 framework. This post walks through why we built it, what it lets us do today, and what it now enables on top.</p>
<h2>Why we built our own robotics stack</h2>
<h3>What the existing options leave you with</h3>
<p>Anyone who has tried to take a vendor demo from the lab to a real site knows the gap. Consumer-tier firmware is built around scripted demos. The platform will follow you around a room or run those scripts, but underneath it functions as a black box: <strong>no persistent map, no goal-driven navigation, no observability</strong> worth the name. Push past that, asking the platform to reliably execute a route while logging the full state of its perception, planning, and control pipelines, and you hit a wall.</p>
<p>A second wave of robotics companies tries to bridge that gap with a <strong>Robot-as-a-Service wrapper</strong>: source the hardware from a major OEM, plug in a foundation model, and sell warehouse operations or machine tending as a managed service. It looks like the answer on the surface. In practice the wrapper hides the layers that need to be hardened (SLAM, planners, transforms, sensor sync, control gating); they show up the moment you try to take the system from a controlled proof-of-concept to a deployable fleet, and a vendor whose differentiator is the wrapper cannot solve them on a project timeline.</p>
<p>For a European robotics integrator, neither is really the alternative anyway. The actual alternative is hiring and retaining an in-house AI research team of five to ten engineers across perception, planning, control, MLOps, and simulation, to build the same stack themselves. Most integrators of the 20-to-80-person shape cannot justify that headcount per customer engagement. Closing the gap between the OEM hardware they already buy and the skill their customer needs is systems engineering work, and no vendor sells it as a product.</p>
<p><img src="https://datameister.ai/blog/autonomous-from-scratch-physical-ai-foundation/robots.png" alt="Unitree GO2 and Unitree G1">
<em>The Unitree GO2 (left) and the Unitree G1 (right). Sources: <a href="https://newatlas.com/robotics/review-unitree-go2-pro-quadruped-robot/">New Atlas</a> and Unitree.</em></p>
<h3>What we wanted instead: Autonomous from Scratch</h3>
<p>We realized that to truly enter the realm of <strong>Physical AI</strong>, we had to build the system <strong>autonomous from scratch</strong>. The brief was simple to state but required intense systems engineering to deliver. We needed an on-robot stack that pairs with the Datameister Platform on the training side: a setup where the robot acts as a mobile, intelligent data-harvesting node, and where the skills the Platform produces have a body to run on.</p>
<p>Instead of a black box, we wanted a transparent architecture we own end-to-end, delivering:</p>
<ul>
<li><strong>Persistent 3D Mapping &amp; SLAM:</strong> Real-time, LiDAR-based 3D SLAM capable of generating high-resolution point clouds. We needed the system to build highly accurate, persistent maps on the fly, with the ability to refine them using loop closures.</li>
<li><strong>Goal-Driven Autonomous Navigation:</strong> Point-to-point routing and continuous loop patrolling powered by Nav2, utilizing an adaptive gait controller to handle complex terrain.</li>
<li><strong>Always-On Data Harvesting:</strong> Continuous capture of the platform&#39;s complete operational state. We needed every sensor feed, planning decision, and control output to be seamlessly logged, with built-in conversion pipelines making that data ready for machine learning ingestion.</li>
<li><strong>Headless, Untethered Operations:</strong> A custom boot-and-provisioning sequence that allows the robot to power on, serve its own network or join the site&#39;s WiFi, and start working immediately with zero laptop tethers or manual script executions.</li>
</ul>
<p>That is the system we shipped on the Unitree GO2: a hardware-agnostic platform for <strong>cognitive robots</strong>, designed to extend to mobile manipulators and <strong>humanoid</strong> platforms as we work toward them.</p>
<h3>How this fits alongside the Datameister Platform</h3>
<p>A note on terminology before going further. The <a href="https://datameister.ai/blog/datameister-platform-accelerating-ai-deployment-for-visual-data">Datameister Platform</a> is our training and deployment infrastructure for visual AI and 3D AI. It lives off the robot, in the cloud or on-prem at a customer site, and handles capture, real-to-sim reconstruction, simulation orchestration, training pipelines, and evaluation. The autonomy stack this post is about lives on the robot. It hosts the skills the Platform produces, captures the real-world data the next training round runs on, and handles the perception, navigation, and control underneath. Two distinct pieces, designed to feed each other.</p>
<h2>The hardware: Unitree GO2 + NVIDIA Jetson + Livox MID-360</h2>
<p>The hardware footprint is deliberately lean and self-contained. The <strong>Unitree GO2</strong> provides a capable quadruped chassis with a front-mounted RGB camera and an SDK that lets us override its default vendor behaviors to inject our own Nav2 velocity commands. The <strong>NVIDIA Jetson J4012</strong> sits on the robot&#39;s back and runs everything: the drivers, SLAM, Nav2, elevation mapping, the Foxglove bridge, and the heavy data-recording pipelines. No tethered laptop, no companion PC. The <strong>Livox MID-360</strong> is a 360° non-repetitive scanning LiDAR. While sparse on a single scan, it builds incredibly dense maps over time, making it the perfect, lightweight match for a mobile robot that can&#39;t carry a heavy, costly spinning sensor.</p>
<p>This is the same standardized off-the-shelf hardware tier our broader work targets; integrators deploying mobile manipulators or humanoids end up on the same compute footprint, which is part of why owning the stack at this level compounds across platforms.
<img src="https://datameister.ai/blog/autonomous-from-scratch-physical-ai-foundation/robot-dog-clean.jpg" alt="The full hardware stack: Unitree GO2 with NVIDIA Jetson and Livox MID-360 mounted on the robot&#39;s back">
<em>The full hardware stack. Compute, perception, and locomotion are all on-board, with no off-robot dependency. (source: Datameister)</em></p>
<h2>The live system today: sensing, navigating, recording</h2>
<p>The first complete skill running end-to-end on this stack is <strong>autonomous navigation and data capture</strong>: give the robot a site and a route, and it patrols autonomously, builds a persistent 3D map of what it sees, captures the run as a replayable bag, and lets you watch it live from a remote browser. The rest of this section unpacks the subsystems underneath.</p>
<p>The same on-board compute we already proved out for <a href="https://datameister.ai/blog/indoor-semantic-segmentation-lidar-pipeline">advanced indoor 3D perception</a> now also runs that skill, so perception and action share one platform with no off-board computer in the loop. The stack is organized around the perception-to-action loop: it anchors observations in a shared map, turns them into navigation context, acts through Nav2, and records the run for replay and improvement. Each subsystem matters on its own, but the real value is how they connect inside one deployable ROS 2 workflow.</p>
<h3>Multi-modal perception</h3>
<p>The robot captures the world and itself simultaneously, across multiple streams.
<strong>GLIM</strong> fuses the Livox LiDAR and IMU into real-time SLAM, producing odometry and geometry anchored in a shared spatial frame. The left image below shows the result: a complete city block mapped consistently from thousands of individual scans.</p>
<p>The GO2 front camera is synchronized with that frame and projected onto the geometry, producing a <strong>colorized point cloud</strong> shown on the right. The color layer adds object and scene context that geometry alone does not carry.</p>
<p>Beyond the spatial picture, the stack continuously logs every joint state, motor command, battery level, and control decision: a <strong>complete operational record</strong> of what the robot perceived, decided, and did. The result is a time-synced stream of everything the robot sees, does, and decides, built in real-time.</p>
<p><img src="https://datameister.ai/blog/autonomous-from-scratch-physical-ai-foundation/slam-and-colorizer.png" alt="Side-by-side: a 3D SLAM map produced by GLIM (left) and the camera-colorized point cloud (right) from the same walkthrough.">
<em>Real-time spatial mapping using GLIM (left) alongside the synchronized, camera-colorized point cloud (right). (source: Datameister)</em></p>
<h3>Autonomous navigation and terrain adaptation</h3>
<p>Once the robot has a shared spatial frame, it can act inside it. <strong>Nav2</strong> handles goal-driven navigation on top of GLIM odometry, publishing updated plans and costmaps as it moves. Through <strong>Foxglove</strong>, shown in the left image below, the robot can be remotely directed for simple point-to-point movement or set on repeatable waypoint routes, allowing the robot to revisit the exact same paths for patrols, inspections, and repeatable data capture.</p>
<p>Reaching those waypoints reliably means accounting for what&#39;s underfoot. To handle uneven environments, <code>elevation_mapping_cupy</code> adds a local 2.5D height map and traversability layer on top of the SLAM output, visible on the right. This signal actively feeds both planning and locomotion: Nav2 switches to a terrain-aware parameter set, while an <strong>adaptive gait controller</strong> adjusts the robot&#39;s steps when the ground becomes harder to cross. The result transforms a static map into a truly navigable environment, telling the robot where to step, where to slow, and where to stop.</p>
<p><img src="https://datameister.ai/blog/autonomous-from-scratch-physical-ai-foundation/nav-and-traversability.png" alt="Side-by-side: Foxglove showing a planned route through the building (left) and a traversability-coloured elevation map (right).">
<em>Foxglove route planning (left) and the traversability-aware elevation map (right). (source: Datameister)</em></p>
<h3>Remote ops and data harvesting</h3>
<p>Every run leaves a trail. The stack records live runs to <strong>ROS 2 bags</strong> by default, ensuring each session can be inspected or replayed later instead of disappearing when the robot stops. The recording captures the live point-cloud and state streams, so each bag can be replayed through the launch flow or exported into ML-ready datasets for training, evaluation, and map review. Every walkthrough becomes both an autonomy run and a reusable data capture session.</p>
<p>Simultaneously, the entire stack is built for untethered, remote observability. The robot exposes its live ROS graph and URDF description through <strong>Foxglove</strong>, rendering a live digital twin in the same scene as the map, point cloud, and planned motion directly from a remote browser. The field workflow is completely self-contained. On boot, the Jetson starts the stack through a systemd service and connects over <strong>Tailscale</strong> for remote viewing, development, and debugging. If it cannot join a known network, it falls back to Wi-Fi provisioning mode. The bags those runs produce are also the input the next section is built on.</p>
<h2>From autonomy to manipulation</h2>
<p>The autonomy stack is the foundation. The next round of work sits on top of it, and it runs in two directions at once.</p>
<h3>The data flywheel</h3>
<p>Every run leaves more than a successful patrol or a clean map. The same ROS 2 bags that record live runs are exactly the input the <a href="https://datameister.ai/blog/datameister-platform-accelerating-ai-deployment-for-visual-data">Datameister Platform</a> needs upstream: real-to-sim reconstruction, scenario augmentation, simulation-grounded policy training, evaluation against held-out scenes. This is the same analytics loop we already run on the Platform for visual AI, now fed by a body that walks around. Every walkthrough produces a complete digital twin of the space; that twin is exactly what our <a href="https://datameister.ai/blog/indoor-semantic-segmentation-lidar-pipeline">indoor semantic segmentation pipeline</a> was built to consume, with semantic labels for every object and space.</p>
<p>Trained skills come back down to the robot, where the autonomy stack hosts them at runtime. That is the flywheel: capture on the robot, train upstream on the Platform, deploy back to the robot. The autonomy stack and the Platform are designed to feed each other rather than to overlap.</p>
<p><img src="https://datameister.ai/blog/autonomous-from-scratch-physical-ai-foundation/indoor.png" alt="A semantically segmented indoor point cloud, with each object class shown in a different colour.">
<em>Advanced 3D perception running on our autonomy stack. (source: Datameister, from &quot;<a href="https://datameister.ai/blog/indoor-semantic-segmentation-lidar-pipeline">Indoor Semantic Segmentation of Point Clouds</a>&quot;)</em></p>
<h3>Legs first, then arms</h3>
<p>The quadruped is the mobile base, the legs. In parallel, we have a stationary cobot manipulation track running on standardized off-the-shelf arms (Franka, UR, AGIBOT). The two converge into mobile manipulators, and beyond that, into humanoid platforms. Manipulation is where most of the current industrial pain concentrates: precision insertion, bin picking, machine tending, SKU-variant grasping, depalletization, on hardware integrators are already buying. We are currently #1 on the <a href="https://www.intrinsic.ai/">Intrinsic AI for Industry Challenge</a> leaderboard as of mid-May 2026, with the precision-insertion track being forced to production through the challenge.</p>
<h3>A foundation that ports across robots</h3>
<p>None of this is GO2-specific by design. Our autonomy work (perception, navigation, and data capture) sits above the low-level locomotion and kinematics the platform vendor provides, so the investment is set up to extend to mobile manipulators and humanoids as we work toward those deployments. The on-board compute footprint (NVIDIA Jetson J4012 + Livox MID-360) is the same tier that runs production-grade perception, navigation, and the policy classes downstream of them: classical control where it works, learned policies where they earn their cost. That portability matters for any team running multiple hardware platforms across customer deployments.</p>
<h2>Where this fits, and working with us</h2>
<p>The autonomy stack is the on-robot side of Datameister&#39;s <strong>Physical AI</strong> work. The off-robot side is the <a href="https://datameister.ai/blog/datameister-platform-accelerating-ai-deployment-for-visual-data">Datameister Platform</a> (training infrastructure that handles capture, real-to-sim, simulation, training, and evaluation), a perception and 3D-AI library that has been live in production for years as the building blocks, and a focused catalog of reference manipulation skills being built compositionally on top of those primitives. Datameister is currently #1 on the <a href="https://www.intrinsic.ai/">Intrinsic AI for Industry Challenge</a> leaderboard as of mid-May 2026.</p>
<p>For European robotics integrators building skills on your customers&#39; hardware (inspection today, mobile manipulation and humanoid next), three buyer paths sit on the same stack:</p>
<ul>
<li><strong>Use what we ship</strong> today: the autonomy stack as a reference, plus production-grade primitives in perception, 3D deep learning, and generation. Reference manipulation skills land progressively over the course of 2026.</li>
<li><strong>Fine-tune anything in the Library</strong> on our infrastructure, against your customer&#39;s hardware and environment. You own the resulting Client-Specific Code.</li>
<li><strong>Build your own skills</strong> on our infrastructure, with Datameister upstream of the skill behavior. You own the IP that differentiates you.</li>
</ul>
<p>Our MSA framework (Platform, Library, Client-Specific Code, Buy-Out License) sits up front so the IP questions are settled before engineering starts. On-prem-default for industrial deployments, EU-domiciled, ISO27001-tracked.</p>
<p>If you are working on robotics in a different shape (a foundation-model lab with a deep cognitive subproblem you would rather not own end-to-end, an OEM looking at training infrastructure for your own platform, or a team trying to bring a specific robot to life in the real world) we are also glad to talk. We have handled the foundational systems engineering so that, together, we can focus on what your customer actually needs the robot to do.</p>
]]></content:encoded>
    </item>
    <item>
      <title>The Monorepo as AI Factory</title>
      <link>https://datameister.ai/blog/the-monorepo-as-ai-factory/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/the-monorepo-as-ai-factory/</guid>
      <pubDate>Tue, 05 May 2026 07:51:44 GMT</pubDate>
      <dc:creator>Ruben Verhack</dc:creator>
      <category>Lab</category>
      <category>Models &amp; Infrastructure</category>
      <description>How Datameister runs on a single monorepo: default knowledge-sharing, faster developer velocity and a consistent quality bar as the team scales.</description>
      <content:encoded><![CDATA[<figure class="post-figure"><img src="https://datameister.ai/blog/the-monorepo-as-ai-factory/image_5ff08765ab1dc5703daf99424233488a.png" alt="The Monorepo as AI Factory"></figure>
<blockquote>
<p><strong>TL;DR</strong> Datameister runs on a single Monorepo. The decision to centralize our codebase early on now shapes how we ship: <strong>knowledge-sharing</strong> across teams happens by default, our tooling investment boosts <strong>developer velocity</strong> across every project, and a <strong>consistent quality bar</strong> holds as we scale.</p>
<p>This foundation powers our product today: a <strong>core technology platform</strong> built on shared libraries and deep, collective research; an <strong>application layer</strong> that turns those capabilities into client-specific applications (which remains the client’s); and the <strong>cloud infrastructure</strong> that delivers the reliability, security, and observability needed to run it all at scale.</p>
<p><strong>Result</strong>: we ship production-grade AI applications in a fraction of the typical timeline. Documentation, security, monitoring, and easy integration are all built in from day one, not bolted on later.</p>
</blockquote>
<p>At Datameister, our codebase and intellectual property have been built around a <strong>Monorepo</strong>, and we are now seeing the long-term benefits of that architecture. If you’re curious about what those benefits are and how they shaped both our technology and our company, this article is for you.</p>
<p><strong>First, what is a Monorepo?</strong> It is short-hand for monolithic repository. The word <em>monolithic</em> comes from the Ancient Greek <em>μόνος</em> (<em>monos</em>, “single”) and <em>λίθος</em> (<em>lithos</em>, “stone”), conveying the idea of a single, solid block. Applied to a repository, it means treating the codebase as one unified whole rather than dividing it across multiple repositories. Although the term itself only gained popularity relatively recently (we can trace back the <a href="https://en.wikipedia.org/w/index.php?title=Monorepo&oldid=851845067">original Wikipedia entry</a> to 2018), the underlying idea is far from new: it closely aligns with the concept of a <strong>shared codebase</strong>.</p>
<p>Today, many companies have demonstrated that a Monorepo isn’t just a promising idea, but a very viable choice even for extremely large codebases:</p>
<ul>
<li>Google - <a href="https://cacm.acm.org/research/why-google-stores-billions-of-lines-of-code-in-a-single-repository/">Why Google Stores Billions of Lines of Code in a Single Repository</a></li>
<li>Meta - <a href="http://blog.3d-logic.com/2024/09/02/what-it-is-like-to-work-in-metas-facebooks-monorepo/">What it is like to work in Meta’s (Facebook’s) monorepo</a></li>
<li>Uber - <a href="https://www.uber.com/be/en/blog/controlling-the-rollout-of-large-scale-monorepo-changes/">Controlling the Rollout of Large-Scale Monorepo Changes</a></li>
<li>Dropbox - <a href="https://dropbox.tech/application/speeding-up-a-git-monorepo-at-dropbox-with--200-lines-of-code">Speeding up a Git monorepo at Dropbox with &lt;200 lines of code</a></li>
<li>Canva - <a href="https://www.canva.dev/blog/engineering/we-put-half-a-million-files-in-one-git-repository-heres-what-we-learned/">We Put Half a Million files in One git Repository, Here&#39;s What We Learned</a></li>
<li>...</li>
</ul>
<h2>Build systems</h2>
<p>It is important to note that a Monorepo is merely an architectural decision, and its success largely depends on the build system (~the tooling) to construct and maintain it. Don’t worry, we’ll discuss this in more detail <a href="#720ns">later in the article</a>. Here we mention two build systems in particular: <strong>Bazel</strong> and <strong>Pants</strong>, as shown in the image below.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/the-monorepo-as-ai-factory/image_5ff08765ab1dc5703daf99424233488a_800.webp" alt="NOTE: Users are based on the Bazel Community page and the Pants Community page"><figcaption><em>NOTE: Users are based on the <a href="https://bazel.build/community/users">Bazel Community page</a> and the <a href="https://www.pantsbuild.org/spotlight/users">Pants Community page</a></em></figcaption></figure>
<h3>Bazel</h3>
<ul>
<li>Originally <em>Blaze</em>: Google’s internal build tool</li>
<li>Purpose: tackle scaling issues with extremely large codebase</li>
<li>Widely adopted in the industry</li>
<li>Large <a href="https://bazel.build/community/users">community</a>: Airbnb, Dropbox, LinkedIn, ...</li>
</ul>
<h3>Pants</h3>
<ul>
<li>Created by Twitter, Foursquare and Square</li>
<li>Similar purpose: replace fragmented build tooling by single project</li>
<li>Growing <a href="https://www.pantsbuild.org/spotlight/users">community</a>: IBM, Salesforce, and... Datameister!</li>
</ul>
<blockquote>
<h4>A brief history</h4>
<p>Before diving into the technical details, I’d like to introduce myself and share the origin story of our Monorepo. My name is Pieter Cooreman. I studied <em>Electrical Engineering</em> at Ghent University, but I was always drawn to <em>Computer Science</em> as well. After my engineering studies, I did a <em>Postgraduate in Weather and Climate Modeling</em> driven by personal interest. During that year, I was also looking for a student job and that’s when Larsen introduced me to Datameister. The rest is, well, history.</p>
<p>When I joined, the codebase was still in its early stages. That moment gave us the opportunity to pause and ask ourselves a <strong>fundamental question</strong>: how could we design our codebase so that it would act as a catalyst rather than a burden in the long run? If we didn’t take the time to <em>really</em> think it through, we would sooner or later bump against a wall. After extensive research, we concluded that the Monorepo was the perfect fit for our company. Looking back, I’m amazed by the progress: how the codebase matured, how we began to reap the benefits from this design choice, and how it continues to evolve through constant team efforts.</p>
</blockquote>
<h2>Why choose for a Monorepo?</h2>
<p>A quick Google search can give you an extensive list of pros and cons, but that doesn’t really tell you much without any context. That’s because your design choices only pay off when they align with your use-case. In other words, <em>you lose every advantage you don’t make proper use of.</em></p>
<p>The figure below illustrates the difference between a Monorepo and a decentralized, <strong>Polyrepo</strong> architecture. In a Monorepo, integrations are built on top of a shared foundation, which allows for reusability across projects. On the other hand, a Polyrepo typically consists of separate vertical stacks with little to no interaction between them.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/the-monorepo-as-ai-factory/image_b43726a0285b2c3974cf0b5ceaac4343_800.webp" alt="The Monorepo as AI Factory"></figure>
<p>We’ve identified three core benefits that played a big role in our decision, as they closely align with our mentality.</p>
<p><strong>Knowledge-sharing</strong>With a centralized codebase, knowledge flows naturally across the whole team. By creating shared, easily accessible libraries, we don’t have to reinvent the wheel for every project. As such, core algorithms, models, and frameworks are readily available. Moreover, everyone can contribute to these libraries, which builds a strong and continuously evolving foundation.</p>
<p><strong>High developer velocity</strong>A Monorepo also enables shared tooling, which ensures everyone is familiar with the development workflow, even when switching between projects. Consequently, slow or repetitive steps can be eliminated which substantially boosts developer velocity. Furthermore, it’s easier to maintain and improve a <em>unified</em> tooling framework in contrast to many different tooling sets.</p>
<p><strong>Consistent quality</strong>The shared infrastructure is definitely a strength, but it also brings with it much greater responsibility. For example, a bug in a shared library can impact all dependent code, which raises the bar for quality. This encourages consistency across the entire codebase, spanning from a coherent coding style to reliable design patterns in more complex tasks.</p>
<p>Now you might wonder, how do we make full use of these advantages?</p>
<h2>From idea to product</h2>
<p>As shown in the figure, the key advantage of our Monorepo setup is how much it compresses the time from idea to production. The reason is simple: the <strong>foundation</strong> is already in place.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/the-monorepo-as-ai-factory/image_600f9016dc19f03244d2cfe60e6626f1_800.webp" alt="The Monorepo as AI Factory"></figure>
<p>Instead of going through repeated setup and integration steps for every project, developers can immediately focus on building the client-specific application logic. There’s no need to reassemble the surrounding platform (monitoring, infrastructure, tooling, etc.), because it already exists as a cohesive foundation. Rather than copying and patching together setups that were never designed to be universal, we build on a system that was designed from the start to work across all projects.</p>
<p>The result is a <strong>fast, iterative workflow</strong>:</p>
<ul>
<li>ideas quickly become prototypes</li>
<li>prototypes can be refined in short cycles</li>
<li>validated solutions can be deployed immediately</li>
</ul>
<p>Where Polyrepo setups introduce delays through coordination and repeated setup, the Monorepo enables a continuous flow, allowing us to move from idea to production in a fraction of the time.</p>
<h2>Build-A-Monorepo</h2>
<p>This still leaves one important question: <strong>how do you actually set up and maintain a Monorepo in practice?</strong> In our experience, this is far from trivial and very much an ongoing process rather than a one-time task.</p>
<p>As mentioned earlier, the success of a Monorepo depends heavily on the <strong>build system.</strong> While some organizations ended up building this tooling from the ground up (Google being the canonical example with <em>Blaze</em>), we were fortunate not to have to start from scratch. While we initially considered using Bazel as our build system, from personal experience we noticed that its <strong>support for Python fell a bit short</strong>. For an AI-focused company like ours, with Python as the backbone, this creates a lot of unwanted friction.</p>
<p>Pants, by contrast, is designed with Python as a core use case. It provides strong support for dependency inference, reproducible builds, and fast, incremental workflows, while remaining approachable for developers who are not build-system specialists. This balance has been key for us: the build system is powerful enough to <strong>scale</strong> with the Monorepo, but <strong>accessible</strong> enough that developers can reason about it and extend it themselves.</p>
<h3>Deploying an endpoint in an afternoon</h3>
<p>To make this tangible, let&#39;s walk through a toy example. Say we want to deploy a new endpoint that accepts an image, runs an AI model on it, and tells you which objects can be seen in the image. In a traditional setup, this means days of scaffolding before we even get to the interesting part. In our Monorepo, we write one thing: the image processing logic. Everything around it is already in place.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/the-monorepo-as-ai-factory/image_b7a7b0786064598bc066722ac6500d45_800.webp" alt="The Monorepo as AI Factory"></figure>
<p>When we spin up a new endpoint:</p>
<p><strong>API documentation</strong> is auto-generated and stays in sync with the code, alongside developer-friendly API collections for quick manual testing.</p>
<p><strong>Authentication</strong> is wired in by default, consistent across all our services.</p>
<p><strong>Async job orchestration</strong> is available when we need it. For heavier workloads, a built-in job system handles processing with status tracking and retries, so the endpoint can accept a request, hand off the work, and let the caller poll for results.</p>
<p><strong>Structured logging and monitoring</strong> come for free. Metrics are collected automatically, and spinning up a monitoring dashboard is merely a few lines of Python thanks to a dashboards-as-code library that plugs straight into our infrastructure.</p>
<p><strong>MCP integration</strong> is a one-liner on top of the existing API, making the endpoint callable as a tool by AI agents without any extra plumbing.</p>
<p>Crucially, none of this is copy-pasted boilerplate. Every endpoint shares the same libraries, the same dependency tree, and the same CI/CD pipeline. When a security patch lands or a dependency gets updated, every service benefits at once rather than quietly drifting apart. The developer&#39;s entire focus stays on the thing that actually matters: the model and the business logic. Getting it to production is just a pull request away.</p>
<p>The benefits of our Monorepo extend even beyond these “supporting” components. It’s also how we share and scale research. Instead of letting experiments live in isolated repos, we turn them into reusable building blocks. Ranging from object detection (like our <a href="https://datameister.ai/blog/detection-transformers-real-time-object-detection">DETR work</a>) to 3D asset generation and real-to-sim scene reconstruction (see <a href="https://datameister.ai/blog/trellis-2-controlled-3d-generation">Trellis</a>), new ideas quickly become tools that anyone can use in production!</p>
<h2>A Double-Edged Sword</h2>
<p>It is important to remember that a Monorepo is not a magical, one-size-fits-all solution. It offers strong benefits, but also introduces its own set of challenges.</p>
<h3>Scaling</h3>
<ul>
<li>Tools like Pants help, but growth still adds complexity</li>
<li>More developers and projects require clear structure and boundaries</li>
<li>Continuous feedback and disciplined repo management remain essential</li>
</ul>
<h3>Isolation</h3>
<ul>
<li>Everything is interconnected, which is powerful but risky</li>
<li>Changes can have wide impact across projects</li>
<li>Balance is key: isolate where needed, reuse where it helps</li>
</ul>
<h3>Edge cases</h3>
<ul>
<li>Not all code fits naturally into a Monorepo</li>
<li>Forcing everything in can be counterproductive</li>
<li>The Monorepo can still serve as a reference for quality and tooling</li>
</ul>
<p><strong>In short:</strong><br> A Monorepo doesn’t remove complexity, but it makes it manageable. With the right tools and engineering culture, it’s a strong foundation, but it will always remain a work in progress.</p>
<h2>Conclusion</h2>
<p>Looking back, the real benefits of the Monorepo didn’t come from the architecture alone, but from how it shaped the way we work at Datameister. It encourages strong collaboration, pushes us toward higher standards, and lets us move faster with more confidence. Over time, those small advantages compounded into a development environment where research ideas quickly turn into production-ready capabilities, and every new project starts on top of everything we&#39;ve built before.</p>
<p>That compounding is what our clients end up feeling directly. When we take on a new project, the foundation is already there. What&#39;s left to build is the model and the application logic the client actually hired us for. The path from first conversation to a robust deployment keeps getting shorter, because each model we ship sharpens the components underneath it.</p>
<p>After enough cycles, the codebase starts behaving more like an AI factory than a codebase: a system where mature sub-components let us take on harder problems by composing what&#39;s already there instead of starting over. It&#39;s why we can credibly move into physical AI today, where the work depends on a stack of capabilities that have to be solid individually before they&#39;re worth anything together. The Monorepo isn&#39;t a plug-and-play decision. It&#39;s the ongoing investment that turns every project we ship into raw material for the next, harder one.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Indoor Semantic Segmentation of Point Clouds: From LiDAR Capture to Real-World Use</title>
      <link>https://datameister.ai/blog/indoor-semantic-segmentation-lidar-pipeline/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/indoor-semantic-segmentation-lidar-pipeline/</guid>
      <pubDate>Thu, 16 Apr 2026 08:58:38 GMT</pubDate>
      <dc:creator>Jirne Meurisse</dc:creator>
      <category>Lab</category>
      <category>Perception</category>
      <description>Turn LiDAR point clouds into indoor spatial intelligence: why outdoor models fail indoors and how to build a reliable segmentation pipeline.</description>
      <content:encoded><![CDATA[<figure class="post-figure"><img src="https://datameister.ai/blog/indoor-semantic-segmentation-lidar-pipeline/thumbnail_51d7a94e034ab9ccae02b29d1526f1d5.jpg" alt="Indoor Semantic Segmentation of Point Clouds: From LiDAR Capture to Real-World Use"></figure>
<blockquote>
<p><strong>TL;DR</strong> Indoor semantic segmentation promises structured scene understanding from LiDAR point clouds, but models trained on outdoor datasets fail to generalize indoors due to differences in viewpoint, environment and sensor characteristics.</p>
<p>At Datameister, we leverage our 3D AI expertise to bridge this gap using domain-aware processing with a state-of-the-art model and domain adaptation through training on indoor-specific datasets. We validate our pipeline end-to-end on our own quadruped platform and perform semantic segmentation and downstream tasks on real-world scans.</p>
<p><strong>Result:</strong> industry-grade indoor spatial intelligence using hardware that is up to 10x cheaper than traditional automotive setups.</p>
<p><strong>Applications:</strong> autonomous navigation and manipulation, spatial virtual twins, real-to-sim pipelines, scan-to-3D automation.</p>
</blockquote>
<p>Raw LiDAR data is not useful on its own, it is just a set of thousands to millions of 3D coordinates describing the geometry of your environment. To make this data actionable, it needs to be transformed into a structured representation that systems can actually reason about.</p>
<p>This is exactly where the <strong>Datameister Semantic Segmentation Pipeline</strong> comes in, transforming raw (sparse) point clouds into meaningful scene understanding that enables downstream tasks such as digital twins, real-to-sim, asset management, etc.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/indoor-semantic-segmentation-lidar-pipeline/thumbnail_e3c04870c97e01801eb74113c4fbca8d_800.jpg" alt="Starting from a sparse raw point cloud to a semantically labeled point cloud, enables downstream tasks such as scene reconstruction."><figcaption><em>Starting from a sparse raw point cloud to a semantically labeled point cloud, enables downstream tasks such as scene reconstruction.</em></figcaption></figure>
<p>If you are building robotics systems, digital twins, or indoor mapping pipelines, LiDAR is likely a core input. Many teams assume they can reuse outdoor segmentation models, but quickly run into the reality that these models fail to transfer across domains, sensors, and platforms. <strong>So how do we achieve reliable indoor scene understanding?</strong></p>
<p>We’ve structured this post as follows. First, we’ll define semantic segmentation on point clouds and why it is the foundation of downstream tasks. Second, we look at how these point clouds are captured and examine the current gold standard of the field: outdoor scenes. Third, we explore why these approaches break down indoors, and what it takes to make them work in practice. Finally, we wrap up with the high-impact downstream applications this unlocks.</p>
<blockquote>
<p><strong>About the author:</strong> Hi, I’m Jirne, an AI Engineer at Datameister. I started out tinkering with electronics, 3D printing, and photography long before pursuing a degree in Computer Science Engineering. During my studies at Ghent University, I became particularly interested in Computer Vision and Computer Graphics. Today, I focus on building practical AI systems that bring spatial intelligence into real-world applications.</p>
</blockquote>
<h2>1. Pixel-Level to Point-Level Semantic Segmentation</h2>
<p>Semantic segmentation assigns domain-specific labels to pixels (2D) or points (3D), which is a first step in robotic perception of an environment. In the example case of 2D images, the task is a <strong>pixel-level classification problem</strong>, where instead of classifying an entire image as “car”, we assign labels to each pixel, e.g. wheels, body and windows. Analogously,this task can be extended to point clouds (3D), resulting in a <strong>point-classification problem.</strong></p>
<figure class="post-figure"><img src="https://datameister.ai/blog/indoor-semantic-segmentation-lidar-pipeline/pixel-vs-point-classification_3126630bba99c1969c11a60d87e3af35_800.jpg" alt="Toy example illustrating pixel-level classification (2D) vs. point-level classification (3D)"><figcaption><em><strong>Toy example illustrating pixel-level classification (2D) vs. point-level classification (3D)</strong></em></figcaption></figure>
<p>Regardless of the input dimensionality, the goal is to produce a dense, spatially consistent map where the boundaries are smooth and logical. In the context of indoor scene understanding, semantic segmentation adds the fundamental structure that allows the model to distinguish points belonging to the wall, the floor or furniture.</p>
<p><em>Note: Unlike <strong>instance segmentation</strong>, semantic segmentation treats all objects of the same category as a single entity.</em> As a rule of thumb: semantic segmentation identifies &quot;<em>what</em>,&quot; while instance segmentation identifies &quot;<em>which</em>.&quot; Instance segmentation can be done by a separate model, or as a post-processing step of semantic segmentation.</p>
<h3>1.1 How 3D Point Clouds Are Captured</h3>
<p>The tradeoff in LiDAR sensor for our application is accessibility (e.g., price, form factor) vs. industry adoption, rather than accuracy. Modern sensors like the <a href="https://www.livoxtech.com/mid-360">Livox Mid-360</a> deliver sufficient accuracy at 1/10th of the price of traditional automotive-grade systems, fundamentally changing deployment feasibility.</p>
<p>At a high-level, LiDAR sensors emit laser pulses, measure their return time, and converts these measurements into 3D points. Repeating this across many directions produces a geometric sampling of the scene, often together with extra attributes such as intensity, timestamp, and sometimes RGB after sensor fusion.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/indoor-semantic-segmentation-lidar-pipeline/lidar-comparison_d162cc332bbee2b9cd1122c38b8a35ff_800.webp" alt="Three categories of LiDAR sensors, illustrating the tradeoff between industry adoption and accessibility (e.g., price, form factor)"><figcaption><em>Three categories of LiDAR sensors, illustrating the tradeoff between industry adoption and accessibility (e.g., price, form factor)</em></figcaption></figure>
<p>The available LiDAR sensors span a wide spectrum: industry-grade sensors like the Ouster ($10K+) that have been the standard for years, versus newer, compact alternatives like the Livox (&lt;$1K). This rapid evolution has dramatically increased accessibility, bringing LiDAR to everyday devices, including some of the smartphones we carry.</p>
<p><strong>In real-world scenarios,</strong> <strong>cheaper sensors unlock dramatically cheaper deployments, but shifts the complexity to the software, which we’ll take care of.</strong></p>
<h2>2. Why Outdoor Segmentation Models Don’t Transfer to Indoor Environments</h2>
<p>Most teams assume that segmentation models trained on outdoor datasets can be reused indoors. In practice, this assumption breaks down and often leads to <strong>unreliable predictions and failed deployments</strong>.</p>
<p>These models are built on datasets such as <a href="https://www.cvlibs.net/datasets/kitti/">KITTI</a>, <a href="https://www.nuscenes.org/">NuScenes</a>, and <a href="https://waymo.com/open/">Waymo Open Dataset</a>, captured using automotive-grade LiDAR sensors in structured outdoor environments. Years of investment in autonomous driving have made these models highly performant in that specific setting, as demonstrated by <strong>impressive real-time segmentation results</strong> on benchmarks like <a href="https://semantic-kitti.org">SemanticKITTI</a>.</p>
<p><video autoplay loop muted playsinline width="100%" preload="metadata"><source src="https://datameister.ai/blog/indoor-semantic-segmentation-lidar-pipeline/semantic-kitti-example-pingpong_c9e59947f067638a303ad19ab06a8cd7.mp4" type="video/mp4"></video></p>
<p><em>Real-Time Semantic Segmentation on the SemanticKITTI dataset (slowed down and looped).<br>The following classes are shown: <strong>Road</strong> (pink), <strong>Building</strong> (yellow), <strong>Cars</strong> (blue), <strong>Pedestrians</strong> (red).</em></p>
<p>Indoor environments, however, introduce fundamentally different conditions. <strong>Viewpoints</strong> change, <strong>sensor characteristics</strong> differ, and scenes become <strong>less structured</strong>. As a result, models trained on outdoor data rely on assumptions about geometry and point cloud patterns that do not hold indoors.</p>
<p><strong>Without adaptation, even state-of-the-art outdoor models become unreliable in indoor settings, making them unsuitable for real-world indoor deployment.</strong></p>
<h3>2.1 Impact of Viewpoint on Point Cloud Density</h3>
<p><strong>First, viewpoint differences fundamentally change the structure of the point cloud.</strong> Models trained on car-mounted LiDAR expect a specific distribution of points that does not match indoor or robot-mounted setups.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/indoor-semantic-segmentation-lidar-pipeline/waymo-vs-go2_8fbace3ddd1c0ce37443529840809566_800.jpg" alt="A different viewpoint of the LiDAR relative to the object has an impact on the incident angle and thus captured point density."><figcaption><em>A different viewpoint of the LiDAR relative to the object has an impact on the incident angle and thus captured point density.</em></figcaption></figure>
<p>For example, a car-mounted LiDAR observes a person from above, resulting in higher point density near the head and lower density toward the legs. A quadruped robot captures the same person from a lower angle, producing the opposite pattern. Since many models (e.g. <a href="https://arxiv.org/abs/1812.05784">PointPillars</a> available in <a href="https://github.com/BAI-Yeqi/OpenPCSeg">OpenPCSeg</a>) implicitly learn these density distributions, this mismatch directly impacts their predictions.</p>
<p><strong>Less intuitively, even if the object is identical, a change in viewpoint can cause models to misclassify or completely miss it, making outdoor-trained models unreliable on indoor robotic platforms.</strong></p>
<h3>2.2 Repetitive vs. Non-Repetitive LiDAR Sensors</h3>
<p><strong>Second, LiDAR sensors differ not just in cost or form factor, but in how they sample the environment.</strong> These differences directly shape the point cloud and influence how models interpret it.</p>
<p>Spinning sensors such as Ouster use <strong>repetitive scanning patterns</strong>, capturing the environment in fixed, predictable rings. This provides high temporal consistency, which is critical for detecting dynamic changes like moving objects. However, these sensors cannot sample the gaps between rings, limiting spatial coverage.</p>
<p>In contrast, sensors like the Livox Mid-360 use <strong>non-repetitive scanning patterns</strong>, where each pass samples different parts of the scene. Individual scans are sparse, but by accumulating multiple frames over time, the sensor achieves much higher spatial density than traditional spinning LiDARs.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/indoor-semantic-segmentation-lidar-pipeline/scanning-patterns_abb18d00b0bfa09654ad22deaff54adb_800.jpg" alt="Comparison repetitive (e.g. Ouster) vs. non-repetitive scanning (e.g. Livox) patterns"><figcaption><em>Comparison repetitive (e.g. Ouster) vs. non-repetitive scanning (e.g. Livox) patterns</em></figcaption></figure>
<p><strong>Unfortunately, models trained on repetitive scan patterns implicitly expect structured ring-like inputs. When deployed on non-repetitive sensors, this mismatch degrades performance, making cross-sensor deployment unreliable without adaptation.</strong></p>
<p><em>Note: Recently, efforts have been made to train <strong>models that transfer across sensors and domains</strong>, such as <a href="https://pointcept.github.io/Utonia/">Utonia</a>, but more in-the-field results are needed to validate this approach in real-world applications.</em></p>
<h3>2.3 Unstructured, Cluttered, and Highly Variable Scenes</h3>
<p><strong>Finally, indoor environments are far less structured than outdoor scenes.</strong> Models trained on outdoor data rely on predictable patterns such as roads, sidewalks, and traffic infrastructure.</p>
<p>Indoor spaces, in contrast, are highly variable and cluttered. Layouts differ significantly, objects are more diverse, and the number of relevant classes increases. Instead of focusing on a few categories like cars and pedestrians, indoor models must distinguish between furniture, fixtures, and structural elements at a much finer level of detail.</p>
<p><strong>A key observation is that indoor segmentation is not just a harder version of the same problem. It requires different assumptions, higher label granularity, and more robust modeling to work reliably in practice.</strong></p>
<h2>3. Making Indoor Segmentation Work on Smaller, Lower-Cost Platforms</h2>
<p>Making indoor segmentation work on accessible hardware in real-world scenarios is not a matter of fine-tuning a model. It requires rethinking the entire pipeline, considering how data is captured to how it is processed and interpreted.</p>
<p>To make this work in practice, the goal is not just accuracy on benchmarks, but a system that is <strong>portable, affordable, and robust enough for real-world deployment</strong>.</p>
<p>Our setup reflects this philosophy. We use a compact platform built around the <a href="https://www.unitree.com/go2">Unitree GO2</a> quadruped, combined with an NVIDIA compute module and a <a href="https://www.livoxtech.com/mid-360">Livox Mid-360</a> LiDAR. This configuration provides a practical balance between cost, mobility, and sensing capability for indoor environments.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/indoor-semantic-segmentation-lidar-pipeline/unitree-assembly_279ffe974b0da2090e85ff38d3078648_800.webp" alt="Render of our development &amp; validation setup: Unitree GO2 with Livox Mid-360 LiDAR and NVIDIA compute module"><figcaption><em>Render of our development &amp; validation setup: Unitree GO2 with Livox Mid-360 LiDAR and NVIDIA compute module</em></figcaption></figure>
<p>The following sections detail how we turn this setup into a <strong>reliable semantic segmentation pipeline</strong>, enabling further <strong>downstream spatial AI</strong>.</p>
<h3>3.1 From Sparse Scans to Segmentation-Ready Data</h3>
<p><strong>A single LiDAR scan from a sensor with non-repetitive scan pattern is too sparse for reliable segmentation.</strong> As discussed in Section 2.2, non-repetitive sensors like the Livox Mid-360 distribute points across different locations in each scan, meaning individual frames lack sufficient spatial coverage.</p>
<p>The animation below shows how this changes over time. Each frame adds new information, gradually filling in the scene as scans are accumulated.</p>
<p><video autoplay loop muted playsinline width="100%" preload="metadata"><source src="https://datameister.ai/blog/indoor-semantic-segmentation-lidar-pipeline/frame-acc_bc53c6ebcb5b755b51cb329d922a9448.mp4" type="video/mp4"></video></p>
<p><em>Frame accumulation over time and robot motion on the Livox Mid-360 creates a dense point cloud for semantic segmentation.</em></p>
<p>On a moving platform, this only works if motion is properly compensated. By synchronizing frame accumulation with the <strong>on-device SLAM system</strong>, we reconstruct a spatially consistent point cloud of the entire floor that is ready for segmentation.</p>
<p><strong>Without scan accumulation and motion compensation, low-cost LiDAR data is too sparse to be useful. With it, we unlock dense, high-quality inputs from lightweight hardware.</strong></p>
<h3>3.2 Datameister’s End-to-End Segmentation Pipeline</h3>
<p><strong>A pre-trained model alone is not enough to achieve reliable indoor segmentation.</strong> While large models like <a href="https://xywu.me/sonata/">Sonata</a> provide state-of-the-art semantic segmentation, they must be adapted to the specific characteristics of indoor environments and sensor setups to achieve a robust output.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/indoor-semantic-segmentation-lidar-pipeline/pipeline_b3841a011d246eac765e254cc7b8e2f8_800.jpg" alt="Datameister’s semantic segmentation pipeline from capture on our platform to a semantically segmented point cloud."><figcaption><em>Datameister’s semantic segmentation pipeline from capture on our platform to a semantically segmented point cloud.</em></figcaption></figure>
<p>Our pipeline combines domain-aware pre- and post-processing with a state-of-the-art segmentation model. We build on top of <a href="https://xywu.me/sonata/">Sonata</a>, a pre-trained <a href="https://github.com/pointcept/pointtransformerv3">PointTransformer V3</a> encoder, and use a decoder head trained on <a href="http://www.scan-net.org/ScanNet/">ScanNET-20</a>, an indoor dataset for semantic segmentation. This allows the model to learn the structure and variability of indoor scenes while classifying points into relevant categories such as floors, walls, and furniture. Depending on the domain, we can train the decoder for the desired classes while preserving the broad geometric understanding learned during large-scale pre-training.</p>
<p>Crucially, this model operates on the accumulated and motion-compensated point clouds described in Section 3.1. This integration with the on-device SLAM system ensures that the input is dense and spatially consistent, which is essential for reliable predictions in real-world environments.</p>
<p>The pipeline diagram shows how these components come together, from data capture on our <strong>customized <a href="https://www.unitree.com/go2">Unitree GO2</a></strong> to a semantically segmented point cloud. The accompanying animation demonstrates the pipeline <strong>in action on our office environment</strong>, highlighting how <strong>unlabeled scans</strong> are transformed into <strong>structured scene understanding</strong>.</p>
<p><video autoplay loop muted playsinline width="100%" preload="metadata"><source src="https://datameister.ai/blog/indoor-semantic-segmentation-lidar-pipeline/dense-to-annotated_b2ad5a8766a3cee6c3de3afbe34d60ad.mp4" type="video/mp4"></video></p>
<p><em>Raw scan to semantic segmentation: Floor (green), Walls (cyan), Chairs (yellow), Tables (orange), Doors (purple), Windows (red).</em></p>
<p><strong>This proves our approach works beyond lab setup or benchmark. It is a practical system that delivers high-quality indoor segmentation on compact, low-cost hardware in real-world conditions.</strong></p>
<h2>4. Downstream Applications</h2>
<p><strong>Semantic segmentation is not the end goal. It is the foundation for turning raw spatial data into usable environments, moving from a research problem to a business enabler.</strong> Once a point cloud is structured and labeled, it becomes a building block for a wide range of practical applications.</p>
<h3>4.1 Semantic-to-Parametric Reconstruction</h3>
<p>A semantically labeled point cloud provides a structured understanding of the scene, enabling reliable detection of key surfaces and objects such as floors, walls, ceilings, doors, and large fixtures.</p>
<p>Building on these labeled points, the environment can be transformed into a parametric representation. In this representation, the scene is described using geometric primitives for layout (such as walls and floors), while more complex objects are approximated with 3D assets. This creates a clean and editable reconstruction of the environment.</p>
<p><strong>We’ve moved from raw sensor data into a structured digital environment that can be directly used by downstream systems.</strong></p>
<figure class="post-figure"><img src="https://datameister.ai/blog/indoor-semantic-segmentation-lidar-pipeline/datameister-viewport-1776176666306_2dd5595651eb7622ee76530c61cc4e67_800.jpeg" alt="A reconstruction of our office using geometric primitives (walls and floor) and 3D assets (tables and chairs)"><figcaption><em>A reconstruction of our office using geometric primitives (walls and floor) and 3D assets (tables and chairs)</em></figcaption></figure>
<h3>4.2 From Reconstruction to Real-World Applications</h3>
<p>Once the environment is reconstructed, it can be used across multiple domains:</p>
<p><strong>Real-to-sim pipelines</strong>: converting scanned environments into simulation-ready spaces for robotics testing, navigation, validation, and continuous improvement.<br><em>Example: A robotics integrator scans a customer’s production hall and generates a simulation environment to validate navigation, obstacle avoidance, and task execution before deployment.</em></p>
<p><strong>CAD and digital twins</strong>: creating a structured base layer that designers and engineers can use to design, analyze and build on their existing modeling tools, e.g., AutoCAD, Blender.<br><em>Example: A renovation contractor digitizes a century-old building and obtains a clean CAD model that can be edited in tools like AutoCAD for planning structural changes.</em></p>
<p><strong>Asset inventory and facility management:</strong> identifying and localizing structural elements and large objects for tracking and maintenance.<br><em>Example: A facility manager scans a warehouse to automatically catalog equipment, enabling faster audits and maintenance planning.</em></p>
<p>In other words, semantic segmentation does not just help a robot &quot;understand&quot; a room. It helps teams turn raw captures into environments they can analyze, simulate, and build on.</p>
<h2>5. Conclusion</h2>
<p>When a human looks at a raw point cloud, they can quickly make sense of it. We intuitively separate floor from wall, ignore noise, and recognize objects even from incomplete geometry. For a robot, that same scene is just a large collection of coordinates until additional structure is added.</p>
<p>That is <strong>where Datameister comes in</strong>. We turn <strong>raw LiDAR captures</strong> into structured scene understanding through semantic segmentation pipelines designed for real-world indoor environments. The goal is not just better benchmark performance, but reliable inputs for the systems that depend on them, from robots that need to navigate to simulations and digital twins that require accurate spatial context.</p>
<p><strong>So what?</strong> This enables teams to move from raw spatial data to environments they can simulate, analyze, and build on, without relying on expensive, automotive-grade hardware.</p>
<p>If you are building systems that scan, map, or interact with the physical world, raw data and hardware constraints should not be your bottleneck. We help teams turn LiDAR data into structured, actionable spatial intelligence, ready for deployment.</p>
<p><strong>Ready to bring indoor spatial AI into your products? Let’s build it together.</strong></p>
]]></content:encoded>
    </item>
    <item>
      <title>From Studio to Robot: Well-Integrated 3D Generation</title>
      <link>https://datameister.ai/blog/blender-controlled-generative-3d-generation-addon/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/blender-controlled-generative-3d-generation-addon/</guid>
      <pubDate>Tue, 24 Mar 2026 10:45:03 GMT</pubDate>
      <dc:creator>Jarne Van den Herrewegen</dc:creator>
      <category>Lab</category>
      <category>3D Generation &amp; Reconstruction</category>
      <description>A Blender add-on for controlled 3D generation, letting creators steer results with precise go-zones and no-go zones inside the modeling environment.</description>
      <content:encoded><![CDATA[<figure class="post-figure"><img src="https://datameister.ai/blog/blender-controlled-generative-3d-generation-addon/screenshot-2026-03-03-at-115604_606c1704dd014074d48ec3e35757225d.webp" alt="From Studio to Robot: Well-Integrated 3D Generation"></figure>
<blockquote>
<p><strong>TL;DR</strong> 3D workflows in manufacturing &amp; creative industries struggle to benefit from generative AI because the outputs lack style consistency, control is limited, and new tools don&#39;t integrate with existing workflows. This post shows a Blender add-on that embeds controlled 3D generation directly into the modeling environment, letting users define where generation can and can&#39;t happen. By combining controlled 3D generation and code generation with predefined actions, e.g. to search existing assets or to generate new models, AI-based workflows are leading to a new paradigm of ideation and creation. Crucially, the same control mechanisms make it useful for generating synthetic training and evaluation data for robotics, computer vision.</p>
<p><strong>Result:</strong> Controlled 3D generation embedded directly in the modeling environment, users steer what gets generated and what stays locked, with asset library integration to stay grounded.</p>
<p><strong>Applications:</strong> Design ideation and rapid prototyping across industrial design, game development, VFX, virtual production, synthetic data generation for robotics and computer vision.</p>
</blockquote>
<h2>1. Friction for 3D Generation Tools</h2>
<p>A pattern that often occurs across 3D workflows: a team tries a <strong>generative AI tool</strong>, gets some interesting outputs, and then <strong>hits a wall</strong> when they try to efficiently use those outputs <strong>in production</strong>. The results don&#39;t match their style, the <strong>control mechanisms are lacking</strong>, and the tool lives outside the environment where all their other work happens. The generative model was impressive. The <strong>integration wasn&#39;t there</strong>. This problem shows up in 3D modeling, concept art, industrial design, mechanical engineering, game development, VFX, virtual production, synthetic data generation, digital twins, ... anywhere teams work with complex assets and established pipelines.</p>
<p>The same friction shows up in a different form for <strong>robotics teams building perception models or manipulation policies</strong>. A robotics team needs thousands of realistic, annotated 3D scenes to train and evaluate navigation and grasping policies. A computer vision team needs diverse variations of a warehouse layout to train an object detector. They could model each scene by hand, which doesn&#39;t scale. An alternative is <strong>unconstrained generation, which produces broad data that looks plausible but goes too far and overcomplicates the learning problem</strong>. The control problem is fundamentally the same: you need generation that respects the structure you already know to be correct.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/blender-controlled-generative-3d-generation-addon/screenshot-2026-03-03-at-115604_606c1704dd014074d48ec3e35757225d_800.webp" alt="Overview of a custom Blender add-on for generative editing. Green is the generation zone, red is the no-go zone and yellow is the base object. Three generations in front."><figcaption><em>Overview of a custom Blender add-on for generative editing. Green is the generation zone, red is the no-go zone and yellow is the base object. Three generations in front.</em></figcaption></figure>
<p>Ideally, <strong>generation would live inside your existing tools</strong>, respect the geometry you&#39;ve already committed to, and even pull from your asset library to stay grounded in your style and design language. This post walks through one concrete example showing an integrated workflow: a custom <strong>Blender add-on for constrained 3D generation and editing</strong>.</p>
<h3>The Control Problem in 3D Ideation</h3>
<p>Early-stage ideation in 3D is time-intensive by nature. Sketching an idea in 2D is fast; translating that into actual 3D geometry is not. Generative AI changes this equation: it can <strong>produce 3D assets in a fraction of the time, making it genuinely useful for rapid prototyping</strong> and exploring design variations early in the process.  </p>
<p>The catch is <strong>control</strong>. <strong>Most 3D generation models give you limited ways to communicate your intent</strong>. You get an output, it fills in the blanks in ways you may not want, and iterating is tedious. On top of that, 3D modeling is easiest in tools you already know inside-out, there&#39;s no reason to reinvent that. The goal is to bring generation into that existing environment, not replace it.</p>
<blockquote>
<p><strong>A small word about the author.</strong> My name is Jarne, I am a first class AI nerd and ML engineer at Datameister. With a PhD in self-supervised 3D deep learning i.e., teaching models to learn meaningful representations from large custom 3D data collections, I bring deep understanding to the table. The best thing for me is rabbit-holing in research and busting out algorithms in disruptive products.</p>
</blockquote>
<h2>2. API-Based 3D Generation in Blender</h2>
<p>The example showcases a Blender add-on that integrates <strong>constrained 3D generation directly into the modeling environment</strong>. The starting point is an existing model in the scene, not a blank canvas. The user defines where generation should happen and where it shouldn&#39;t using geometry defined in Blender, sends that to our server, and gets back a set of variations to evaluate.</p>
<h3>Connected through an API</h3>
<p>The generation runs through an API call on our <a href="https://datameister.ai/blog/datameister-platform-accelerating-ai-deployment-for-visual-data">Datameister GPU platform</a> using an adapted version of <a href="https://datameister.ai/blog/three-challenges-in-finetuning-trellis">Trellis</a>, which means <strong>we handle latency, queue management, and can adapt the model to a client&#39;s specific data and style</strong>. Queue status and active users are surfaced directly in the UI; mesh normalization and other pre/post-processing steps are handled automatically.</p>
<p>Blender is the environment we used here, but the <strong>same approach applies to any software that supports plugins: CAD tools, simulation environments, game engines, or pipelines like ComfyUI workflows.</strong> The integration layer is what matters for end users. This also means we&#39;re independent of any specific model and can choose whichever works best for a given use case.</p>
<p><video autoplay loop muted playsinline width="100%" preload="metadata"><source src="https://datameister.ai/blog/blender-controlled-generative-3d-generation-addon/charriot-zones_a978bf8788da03085aa37255dd7cfb5c.mp4" type="video/mp4"></video></p>
<p><em>Green is the generation zone, red is the no-go zone and yellow is the base object. Generation results at the bottom.</em></p>
<figure class="post-figure"><img src="https://datameister.ai/blog/blender-controlled-generative-3d-generation-addon/charriot-results_b5bac925401f02d84d5264eb1f6a39c9_800.webp" alt="From Studio to Robot: Well-Integrated 3D Generation"></figure>
<h3>Steering with Go-Zones and No-Go Zones</h3>
<p>The constraint system is a custom-built algorithm and the piece that makes this practical for real production work. The add-on lets users define <strong>go-zones,</strong> bounded volumes where the model is free to generate, and <strong>no-go zones,</strong> regions that must not be touched. These are set directly in the Blender viewport and passed to the model at inference time.  </p>
<p>Instead of generating into a vacuum and manually cleaning up afterward, the creator is steering from the start. <strong>Take an existing asset, mark the part you want to explore variations on, lock the rest</strong>, and get back options that respect the structure you&#39;ve already committed to. That&#39;s a different experience from prompt-and-hope. You can read more about the approach in our post on <a href="https://datameister.ai/blog/constraint-aware-3d-generative-design-editable-iterable-manufacturable">constraint-aware 3D generative design</a>.</p>
<p>For synthetic data, this constraint system maps directly to <strong>domain randomization with guardrails</strong>. You have a validated base scene: a robot workcell, a warehouse aisle, a surgical tray, and you want to <strong>generate diverse variations for training and evaluation while keeping the structural layout physically plausible</strong>. Go-zones let you define where variation should happen while no-go zones lock what must remain fixed.</p>
<h2>3. Staying Close to Your Tools and Your Assets</h2>
<p><strong>When AI lives inside your modeling tool, it can see your scene, query your asset library, and match your established style and design language.</strong> Say you have a catalog of 500 parts or environment props built over several years of production, the add-on can search that library, surface the closest matches to what you&#39;re generating, and use them as style and geometric references. <strong>3D generation stays grounded in what you&#39;ve already approved</strong> rather than producing something generically plausible that needs reworking. The same applies to synthetic data: a robotics team doesn&#39;t want hallucinated objects, they want controlled variation on validated CAD models from their own part catalog. This is an underrated aspect of well-integrated tooling.  </p>
<p>This also opens up a different way to build full scenes: <strong>combine existing assets for the parts that are already right, and use generation selectively for the gaps</strong>: a unique prop, a surface variation, a structural element you don&#39;t have yet. Generation where it matters, reuse everywhere else.  </p>
<p>Staying close to familiar tools accelerates adoption. No new platform, no file format changes, no disruption to review. This applies whether you&#39;re a 3D studio, a game developer, an engineering firm, a manufacturer, or any team with an established 3D pipeline. <strong>Integration that respects existing conventions is what makes the difference between something teams try once and something that sticks.</strong></p>
<h2>4. Where This Is Going: Blender MCP &amp; friends</h2>
<p><strong>Blender MCP is another example of AI integration</strong>, albeit more open-ended. We also have our own version of it at Datameister, called <a href="https://datameister.ai/blog/why-the-future-of-3d-generative-ai-is-programmatic">DD3M</a>. It operates with fewer constraints and allows chatbots to execute virtually any action in the scene, which produces results that range from genuinely impressive to frustrating, sometimes within the same session.</p>
<p>Ask it to build a beach scene from a reference image and it&#39;ll pull HDRIs, place assets, and set up lighting in minutes. Ask it to position an object at precise coordinates and it may place it incorrectly three times in a row. The capability is clearly there; the reliability isn&#39;t.</p>
<p>What bridges that gap is guardrailing and purpose-built tooling. <strong>Rather than exposing the full action space to a language model</strong> and hoping for the best, the more productive path is <strong>defining a set of fixed operations</strong> the model can invoke with confidence and letting the model choose between the operations and the free-form code generation. This separates what the model decides from what the model executes. <strong>Two concrete directions stand out</strong>:</p>
<p><strong>Automating repetitive work.</strong> Scene cleanup, naming conventions, LOD generation, UV unwrapping, file format conversions, ... tasks that are well-defined but tedious are a natural fit. A language model doesn&#39;t need creative latitude here; it needs reliable tools to call. For synthetic data pipelines, this extends naturally to automating scene randomization: camera placement sweeps, lighting rig variations, material permutations, physics-based object drops.</p>
<p><strong>Accelerating asset reuse.</strong> Most studios are sitting on years of approved assets. With the right tooling, a model can search that library semantically, surface relevant matches, and drop them into the scene.</p>
<h2>5. Conclusion: the Advantage of Independent Development</h2>
<p>We&#39;re not a foundation model lab. We take the <strong>best available</strong> (also legally-available) <strong>models</strong>, <strong>open-source, fine-tuned, or third-party, and build the layer that makes them usable in production</strong>: deployment infrastructure, custom tooling, fine-tuning on client data, and in some cases algorithms built from scratch. The go-zone/no-go zone system for 3D generation is an example of the latter, not something you get by calling an off-the-shelf API. The same depth applies across domains: strong generalist models exist for 3D, vision, and language, but making them work well for a specific team in a specific context is a different problem entirely.</p>
<p>The thread running through this post is that <strong>well-integrated controlled generation</strong> is a shared primitive. The same mechanisms that let a designer explore variations on a product housing while locking the mounting points also let a robotics team generate thousands of training scenes while keeping the physical layout plausible. <strong>The integration work is there to reduce the friction, facilitate creative flow or automate synthetic data pipelines.</strong></p>
<p>If <strong>your team is working with 3D assets and wondering how generative AI could fit into your existing pipeline</strong> without disrupting it, we&#39;d love to talk. Whether you&#39;re exploring early-stage ideation tools, looking to make better use of an existing asset library, or want to automate the tedious parts of your workflow, we can help figure out where AI adds real value and build the integration to facilitate fast adoption. Reach out to start the conversation.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Why the Future of 3D Generative AI is Programmatic</title>
      <link>https://datameister.ai/blog/why-the-future-of-3d-generative-ai-is-programmatic/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/why-the-future-of-3d-generative-ai-is-programmatic/</guid>
      <pubDate>Thu, 29 Jan 2026 09:47:50 GMT</pubDate>
      <dc:creator>Ruben Verhack</dc:creator>
      <category>Lab</category>
      <category>3D Generation &amp; Reconstruction</category>
      <description>How programmatic 3D generative AI reshapes workflows by producing editable, script-based assets instead of opaque static meshes.</description>
      <content:encoded><![CDATA[<figure class="post-figure"><img src="https://datameister.ai/blog/why-the-future-of-3d-generative-ai-is-programmatic/overview_2dd0e1a9402a8d8bdd4bb1204654abf8.jpg" alt="Why the Future of 3D Generative AI is Programmatic"></figure>
<blockquote>
<p><strong>TL;DR</strong> Current 3D generative AI tools are black boxes, they produce meshes that look appealing but are static, fragile, and impractical to edit meaningfully. DD3M is an early programmatic generative AI framework integrated directly in Blender. Unlike tools that produce opaque geometry, it generates editable Blender Python construction logic.</p>
<p>By pairing Large Language Models (LLMs) with Vision Language Models (VLMs), DD3M creates a transparent workflow. It combines API knowledge with an iterative visual feedback loop to build assets step-by-step.</p>
<p><strong>Result</strong>: Clean, programmatic geometry and materials that behave like native Blender assets: fully editable, pipeline-native, and production-compatible.</p>
<p><strong>Applications</strong>: Rapid concept prototyping, 3D pipeline automation, asset generation, design automation, automated procedural scene orchestration, and scene randomization</p>
</blockquote>
<p>The promise of AI-generated 3D content is undeniable, but current generative AI tools powered by diffusion models face a fundamental problem: their outputs are <strong>visually impressive but production-brittle</strong>. Because the geometry is baked into a static mesh, you cannot meaningfully edit parameters or structure. If the proportions are wrong, you are forced to regenerate from scratch.</p>
<p><strong>DD3M</strong> serves as a <strong>proof-of-concept for a new paradigm</strong> in 3D generation. It is a <strong>Blender-native agentic framework</strong>, enabling a <strong>code-first workflow</strong> directly within the viewport. Instead of producing static geometry, DD3M generates and executes <strong>Blender Python construction logic.</strong> The result is an editable blueprint, an asset defined by code that artists can refine via image or natural language prompts or by adjusting the output directly using standard Blender tools. The resulting assets are fully exportable to universal formats like OpenUSD.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/why-the-future-of-3d-generative-ai-is-programmatic/overview_2dd0e1a9402a8d8bdd4bb1204654abf8_800.jpg" alt="Creation workflow in DD3M’s Blender add-on"><figcaption><em>Creation workflow in DD3M’s Blender add-on</em></figcaption></figure>
<p>DD3M moves away from &quot;one-shot&quot; generation toward a <strong>non-destructive, iterative cycle.</strong> The system functions through three distinct stages of evolution:</p>
<p><strong>Direct Generation:</strong> The system synthesizes an initial script directly from your prompt.</p>
<p><strong>Automated Refinement:</strong> A built-in Vision-Language Model (VLM) &quot;sees&quot; the output and applies automatic code fixes to correct geometry or materials.</p>
<p><strong>User-Directed Edits:</strong> The user requests specific changes (e.g., <em>&quot;Make the base wider&quot;</em>). Rather than rebuilding the mesh, DD3M updates only the relevant <strong>Python code blocks</strong>, keeping the rest of the asset intact.</p>
<p>DD3M is a powerful alternative for other programmatic 3D generation approaches such as using the <a href="https://github.com/ahujasid/blender-mcp">Blender MCP</a> with Claude Opus 4.5.</p>
<h2>1. The Black Box Bottleneck</h2>
<p>Recent 3D generation tools operate as <strong>black boxes</strong>. You feed them a prompt or image, and they return a finished 3D model, often via diffusion, without revealing the construction process or accessible parameters.</p>
<p>While visually impressive, this <strong>opacity</strong> effectively hides how the object was made. For hobbyists, this feels like magic; for professional technical artists requiring transparency and control, it represents a dead end.</p>
<h3>1.1 Why is Static Geometry a Bottleneck for 3D production?</h3>
<p>Current generative tools produce &quot;frozen&quot; assets. The resulting mesh is a snapshot: vertex positions, topology, and materials are baked into the output, leaving no accessible parameters for adjustment.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/why-the-future-of-3d-generative-ai-is-programmatic/bottleneck_a6c4a32562a4103ab1cd027c5c8ea3a4_800.jpg" alt="Geometry and materials of a Mesh-generated asset, shown alongside its underlying topology (source: from meshy.ai)"><figcaption><em>Geometry and materials of a Mesh-generated asset, shown alongside its underlying topology (source: from <a href="https://www.meshy.ai/3d-models/Tiny-Rex-v2-019afe18-70f1-77af-8bc6-08f2fcc8fd5d">meshy.ai</a>)</em></figcaption></figure>
<p>This brings us to the core limitations. Changing details like dimensions or materials requires a complete <strong>regeneration,</strong> a new forward pass through the model. This forces users to &quot;roll the dice&quot; on a fresh output rather than tweaking specific elements. For professional modeling workflows, which rely on precise, iterative refinement, this inability to edit structure without resetting the asset is often a showstopper.</p>
<h3>1.2 The Programmatic Solution to Editable 3D Generation</h3>
<p>Unlike black box systems, DD3M generates <strong>Blender Python scripts</strong>. This creates an <strong>editable blueprint</strong> where construction logic, parameters, and materials remain intact as code, rather than a frozen mesh.</p>
<p>This foundation enables a <strong>controlled editing workflow</strong>. Users primarily adjust assets via refinement prompts, which DD3M translates into targeted modifications of specific, semantically organized code blocks. This ensures changes are localized and stable, allowing for quick iteration without regenerating from scratch.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/why-the-future-of-3d-generative-ai-is-programmatic/cake-and-duck_68acf770f69fc95da8cf7dc87f3ffde0_800.jpg" alt="Examples of DD3M outputs and their subsequent refinements"><figcaption><em>Examples of DD3M outputs and their subsequent refinements</em></figcaption></figure>
<p>Crucially, the resulting assets are <strong>structured assemblies</strong> of distinct parts, not monolithic meshes. They remain fully compatible with Blender’s native interface, allowing artists to tweak geometry and materials using standard tools. These manual UI edits integrate smoothly with subsequent AI refinements. While direct code editing is available for deeper control, the system is designed so that the asset <strong>evolves</strong> through prompts and interaction rather than remaining a static output.</p>
<h3>1.3 DD3M: A Modular System That Scales</h3>
<p>DD3M utilizes a <strong>modular agentic architecture</strong> combining LLMs, VLMs, and retrieval, rather than a single monolithic model. Specialized agents handle distinct tasks: planning, coding, critique, and refinement, allowing the system to scale naturally. As foundation models improve, DD3M’s coding reasoning and visual analysis capabilities upgrade automatically without architectural changes.</p>
<p>A <strong>retrieval backbone</strong>, containing Blender API documentation and verified prompt-script pairs, anchors this workflow. By mapping user intent to verified code patterns, this layer ensures stability and robustness even as Blender’s API evolves.</p>
<p>This design is highly <strong>extensible</strong>. New tools, custom addons, and libraries can be integrated via function calls or Model Context Protocol (MCP) endpoints. Consequently, DD3M acts less like a static product and more like an evolving technical artist, adapting to new AI models and production requirements without locking users into a fixed stack.</p>
<h2>2. Where Current Programmatic Approaches Fail</h2>
<p>Generating Blender code from text seems straightforward, but the gap between valid syntax and <strong>usable 3D content</strong> is significant. Simpler baselines consistently fail to bridge this gap, highlighting the necessity of DD3M’s architecture.</p>
<p>While multi-agent coordination is complex, DD3M demonstrates that a well-designed system effectively overcomes these limitations, achieving reliable programmatic generation where naive approaches fail.</p>
<h3>2.1 Why Single-Model Generation Fails</h3>
<p>The &quot;naive&quot; approach, giving a single LLM the Blender API documentation, fails due to <strong>contextual blindness</strong>. While modern LLMs are strong Python coders, they live entirely in the text domain. They blindly generate code without seeing the result, unable to detect if a mesh is misshapen, materials are missing, or objects are floating incorrectly.</p>
<p>Blender’s specialized API amplifies this issue; even small inaccuracies lead to unpredictable failures. Without a visual feedback loop, a single-model system cannot recover from errors or iterate on the design, users are forced to restart and hope for a better result.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/why-the-future-of-3d-generative-ai-is-programmatic/gemini_6054a0f1f47ae32324b9427537769b0f_800.jpg" alt="Results for the prompt “a frog with a crown” generated by Gemini 3 Pro (left) and DD3M (right)"><figcaption><em>Results for the prompt “a frog with a crown” generated by <a href="https://gemini.google.com/app">Gemini 3 Pro</a> (left) and DD3M (right)</em></figcaption></figure>
<p>Even when syntactically correct, single-model outputs tend to be simplistic. As shown above, lacking the ability to evaluate and refine the render prevents the model from achieving high quality. This proves that <strong>visual feedback</strong> and <strong>iterative correction</strong> are not luxuries, but essential requirements for closing the loop between code and 3D creation.</p>
<h3>2.2 LL3M: The Multi-Agent Pioneer</h3>
<p>LL3M pioneered the multi-agent approach, proving that coordinating specialized agents, for planning, coding, and critique, grounded in RAG could effectively solve the &quot;contextual blindness&quot; of single-model systems.</p>
<p>However, as an academic prototype, it prioritized feasibility over production performance. Its limitations render it impractical for professional use:</p>
<p><strong>Latency:</strong> Generation speeds are too slow for interactive, high-velocity creative workflows.</p>
<p><strong>Reactive vs. Proactive:</strong> LL3M writes code &quot;blind&quot; guessing at visuals. DD3M solves this by generating a <strong>Visual Blueprint</strong> <em>before</em> coding begins.</p>
<p><strong>Geometric Fidelity:</strong> Outputs often resemble collections of basic primitives rather than cohesive, organic assets.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/why-the-future-of-3d-generative-ai-is-programmatic/ll3m_64602d6b44f60379c4f746542cfbcd5e_800.jpg" alt="Results for the prompt “a frog with a crown” generated by LL3M (left) and DD3M (right)"><figcaption><em>Results for the prompt “a frog with a crown” generated by LL3M (left) and DD3M (right)</em></figcaption></figure>
<p>The comparison above illustrates the gap: LL3M produces a rudimentary result, while DD3M generates a complexer, stylistically distinct asset. While LL3M proved the architecture works, DD3M engineered it for industry by optimizing agent coordination, error loops, and visual planning.</p>
<h3>2.3 The Tool-Calling Alternative: Blender MCP</h3>
<p>The landscape of programmatic 3D generation also includes tool-calling frameworks like <a href="https://github.com/ahujasid/blender-mcp">Blender MCP</a>. Unlike DD3M’s approach of writing ground-up logic, Blender MCP operates by giving an LLM access to a set of predefined, validated &quot;tools&quot; or Python snippets. For example, instead of the AI struggling to write a complex shader from scratch, it can simply trigger a tool call for <strong>&quot;search_polyhaven_assets&quot;</strong>. This high-level abstraction provides guardrails, ensuring that the AI works with sensible operations. The documentation for each tool call gives a rich semantic context to the model allowing it to reason on a higher level.</p>
<p>This stability comes with a trade-off in creative range and manual overhead. Because Blender MCP is strictly limited to the tool calls that currently exist in its library. While Blender’s Python API is fully exposed and offers a wide range of options, expanding the MCP&#39;s capabilities requires significant human effort to create and validate every potential action.</p>
<p>Importantly, DD3M offers a robust feedback loop powered by a Vision-Language Model (VLM) that critiques the work in progress all the time, allowing it to adapt and refine assets autonomously. This is an under-used capability in many LLM based applications. This capability is only used by Blender MCP at the end of the generation. Ultimately, the two systems can work together for the right use case. A combination of Blender MCP’s reliable tool-based operations and DD3M’s flexible, vision-corrected generation would create a powerful, complementary workflow for modern 3D pipelines.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/why-the-future-of-3d-generative-ai-is-programmatic/blender-mcp_36092664f11257b9d8d92975eace8542_800.jpg" alt="Results for the prompt “a frog with a crown” generated by Blender MCP Claude Opus 4.5 (left) and DD3M (right)"><figcaption><em>Results for the prompt “a frog with a crown” generated by Blender MCP Claude Opus 4.5 (left) and DD3M (right)</em></figcaption></figure>
<h2>3. DD3M in Practice</h2>
<p>DD3M bridges natural language and downstream-ready assets by consistently producing <strong>clean, editable Python scripts</strong>, regardless of whether the input is text or an image. This reliability is built on a three-phase workflow:</p>
<p><strong>Initial Creation:</strong> The system generates a structured plan and retrieves API docs and examples. It then writes a foundational script capturing the object&#39;s core geometry, layout, and materials.</p>
<p><strong>Auto-Refinement:</strong> A self-correction loop executes the script and renders the output. A VLM critiques these renders against the prompt, triggering code updates until the asset meets fidelity standards.</p>
<p><strong>User Refinement:</strong> Users can request adjustments (proportions, materials, style) via simple prompts. These trigger the same targeted correction loop, modifying specific code blocks without regenerating the asset from scratch.</p>
<h3>3.1 Prompt-Based Generation</h3>
<p>In text-only workflows, DD3M synthesizes an internal <strong>Visual Blueprint,</strong> a generated reference image capturing intended proportions, silhouette, and style. This acts as a stabilizing guide for subsequent geometric and material decisions.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/why-the-future-of-3d-generative-ai-is-programmatic/tree_0c928970c670a9357e6f8b11a11407fc_800.jpg" alt="Prompt-based generation using DD3M, showing the three different phases the framework goes through"><figcaption><em>Prompt-based generation using DD3M, showing the three different phases the framework goes through</em></figcaption></figure>
<p>This approach makes generation surprisingly stable. Rather than guessing or drifting with revisions, DD3M acts like a technical artist: sketching a concept first, then building a clean, programmatic asset that evolves iteratively without resetting.</p>
<h3>3.2 Image-Based Generation</h3>
<p>Users can provide direct visual references, photos, concept art, or sketches, to guide generation. In this workflow, the user-uploaded image replaces the synthesized blueprint, serving a dual role: it informs <strong>what to build</strong> and acts as the <strong>evaluation standard</strong> for the VLM critique phase.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/why-the-future-of-3d-generative-ai-is-programmatic/robot_917b4e7af00f7535b2a2ec3760f89079_800.jpg" alt="Image-based generation using DD3M, showcasing the resembles of the 3D model and the reference picture"><figcaption><em>Image-based generation using DD3M, showcasing the resembles of the 3D model and the <a href="https://howtodrawforkids.com/how-to-draw-a-robot/">reference picture</a></em></figcaption></figure>
<p>This is critical for production pipelines. Artists can input actual concept art to ensure consistency, receiving a programmatic implementation that closely matches the source. The result remains fully editable, allowing for further textual refinements to meet exact requirements.</p>
<h3>3.3 Iterative Refinement</h3>
<p>User refinement operates through the same mechanism as the automated VLM critique, simply swapping the feedback source. DD3M interprets user guidance to locate relevant construction steps, adjusting only those specific code blocks before re-executing and verifying the output.</p>
<p>Because this reuses the <strong>targeted-update pipeline</strong>, iterations remain stable and predictable, avoiding full regeneration. Crucially, manual adjustments made in Blender or the script are respected; DD3M treats them as the current state and refines <strong>around</strong> them, ensuring a continuous evolutionary loop without overwriting user work.</p>
<h3>3.4 Limitations</h3>
<p>While DD3M offers significant advantages in editability, the programmatic approach is not a universal solution for every 3D task. Recognizing where code excels, and where it struggles, is key to integrating it effectively.</p>
<p><strong>Structured vs. Chaotic Form:</strong> The system thrives on objects with clear logical structures, such as architecture or machinery to stylized characters. However, it is less effective for <strong>highly irregular or chaotic forms</strong>, like entangled plants or undefined soft shapes. Describing these arbitrary, flowing curves via Python is often less efficient than traditional sculpting.</p>
<p><strong>Inference Latency:</strong> Quality and stability come at the cost of speed. Due to the multi-agent feedback loop, generation is not real-time. While significantly faster than manual modeling, the process is slower than one-shot diffusion inference, prioritizing <strong>topological validity and editability</strong> over raw speed.</p>
<h2>4. The Architecture Behind DD3M</h2>
<h2>5. Expanding upon DD3M</h2>
<p>While DD3M excels at generating individual procedural assets, its architecture is designed for broader workflows. By treating the LLM as a <strong>logic engine</strong> rather than just a mesh generator, capabilities can expand from modeling single objects to orchestrating entire scenes and creating interactive tools. <strong>Think of DD3M as a higher-level reasoning engine that has access to a toolbox of other narrow AI or standard Blender tools.</strong></p>
<h3>5.1 Hybrid Workflows utilizing Existing or Diffusion-Based Assets</h3>
<p>A purely programmatic approach is powerful, but production often relies on vast <strong>asset libraries</strong>. Future DD3M iterations could act as intelligent orchestrators, determining when to construct new geometry and when to retrieve, import, and place existing models, effectively serving as a semantic layout artist.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/why-the-future-of-3d-generative-ai-is-programmatic/asset_c0785cdc5cf8fa348c13bc71e7c82104_800.jpg" alt="Example showcasing how various asset libraries can be used to construct scenes (source: SceneWeaver)"><figcaption><em>Example showcasing how various asset libraries can be used to construct scenes (source: <a href="https://scene-weaver.github.io/">SceneWeaver</a>)</em></figcaption></figure>
<p>This expansion enables <strong>hybrid generation pipelines</strong>. Beyond static libraries, DD3M could delegate organic or sculpted assets to diffusion-based black box models. In this role, DD3M becomes the &quot;glue&quot; of the 3D pipeline, generating the logic that assembles, scales, and unifies diverse assets into a cohesive, editable scene.</p>
<h3>5.2 Automated Tool Creation</h3>
<p>Currently, editing relies on prompts or direct code interaction. The next step is automating <strong>User Interface creation</strong> and integration with chatbots just like Blender MCP. Future coding modules could identify critical variables, such as dimensions, density, or material attributes, and automatically expose them as native UI elements.</p>
<p>Instead of a one-off script, the system would expose a <strong>fully parameterized tool</strong> complete with custom panels and sliders. This transforms the AI into a developer of interactive tools, allowing non-technical users to manipulate the model in real-time and decoupling the asset from the generation process.</p>
<h2>6. Closing Thoughts</h2>
<p>Current generative 3D tools prioritize visual appeal over utility, often at the cost of production readiness. <strong>DD3M</strong> fundamentally shifts this approach, treating generation not as a one-shot inference but as an iterative, code-based process. By leveraging multi-agent architectures to write and refine scripts, it solves the critical consistency and editability issues plaguing existing black box solutions.</p>
<p>Building these advanced systems requires a deep integration of foundation models with complex technical pipelines. At <strong>Datameister</strong>, we specialize in bridging this gap. We do not just build models that dream; we build architectures that work. Book a technical discovery call with our engineers to see how we can modernize and automate your 3D stack, and stay ahead of the curve.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Three challenges in finetuning Trellis</title>
      <link>https://datameister.ai/blog/three-challenges-in-finetuning-trellis/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/three-challenges-in-finetuning-trellis/</guid>
      <pubDate>Fri, 09 Jan 2026 16:37:55 GMT</pubDate>
      <dc:creator>Liam Wezenbeek</dc:creator>
      <category>Lab</category>
      <category>3D Generation &amp; Reconstruction</category>
      <description>Practical lessons from finetuning Trellis for image-conditioned 3D generation: data quality, memory bottlenecks and overfitting.</description>
      <content:encoded><![CDATA[<figure class="post-figure"><img src="https://datameister.ai/blog/three-challenges-in-finetuning-trellis/6501dba4-b4d5-438d-919d-7341b7401302_ac5e7694421dcfcc5c6188dbb6390392.jpg" alt="Three challenges in finetuning Trellis"></figure>
<blockquote>
<p><strong>TL;DR</strong><br>Finetuning Trellis can dramatically improve image-conditioned 3D mesh generation, but it is not exactly plug-and-play. Out-of-the-box settings quickly run into bottlenecks around preprocessing time, GPU memory and overfitting.</p>
<p>Drawing from experience gained across Datameister projects, we outline where finetuning efforts tend to succeed or fail in practice. We show how data coherence, preprocessing choices, memory-aware training, and careful regularization shape the outcome far more than aggressive hyperparameter tuning.</p>
<p><strong>Result:</strong> With a focused and pragmatic approach, Trellis can be adapted into a robust, domain-specific 3D generator.</p>
</blockquote>
<p>If you’ve tried finetuning a large 3D generative model like <a href="https://microsoft.github.io/TRELLIS/">Trellis</a>, you’ve likely discovered that it can be deceptively hard. At Datameister, we regularly tackle this challenge when adapting generative models to domain-specific use cases. If you’re new to Trellis or want a quick refresher on its pipeline, <a href="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction">this blog</a> by Jarne is a good starting point.</p>
<p>The out-of-the-box performance of Trellis is impressive. The base model was trained on a general dataset of <a href="https://huggingface.co/datasets/JeffreyXiang/TRELLIS-500K">500,000 objects</a> and generates reasonable meshes for a wide range of object categories. In some use cases, however, “reasonable” is not good enough and details matter. In such scenarios, you could try to finetune the Trellis model on a custom dataset built from object meshes of interest.</p>
<p>The Trellis authors provide both training code and a toolkit for data preprocessing to get you started. In practice, however, finetuning is less plug-and-play than it might appear and introduces several challenges. In this post, we share insights gathered across multiple Datameister projects, using the <a href="https://github.com/stnoah1/mcb">mechanical components benchmark (MCB)</a> as a guiding dataset where we will focus on image-conditioned mesh generation. We will cover:</p>
<p>Which Trellis components are worth finetuning?</p>
<p>The three main bottlenecks: data, memory and overfitting</p>
<p>What changes with Trellis 2?</p>
<h2>1. Which component of Trellis should you finetune?</h2>
<p>The Trellis pipeline consists of eight models that operate in sequence. The first question to consider then is which one of these is worth finetuning.</p>
<p>There are 2 major categories to choose from:</p>
<p><strong>VAEs</strong><br>Used to encode a mesh, input image or feature map into latent space or decode them the other way around.</p>
<p><strong>Diffusion flow models</strong><br>Responsible for generating object structure, geometric detail and texturing in latent space.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/three-challenges-in-finetuning-trellis/pipeline-v3_800a6972e8c97d9583e6096833cf3cbf_800.webp" alt="Overview of the Trellis pipeline. Source: arXiv:2412.01506"><figcaption><em>Overview of the Trellis pipeline. <em>Source:</em> arXiv:2412.01506</em></figcaption></figure>
<p>In reality, we found that the VAEs already work really well for most use cases. Well-known models that started from the Trellis model, such as <a href="https://hi3dgen.org/">Hi3DGen</a>, actually do not touch these and use them as-is.   </p>
<p>The biggest gains are found in finetuning the diffusion flow models that generate object components. Trellis has two such flow models to be used in subsequent stages.</p>
<p><em>Sparse structure flow:</em>  Generates a binary voxel grid from noise based on the input image conditioning.</p>
<p><em>Structured latent flow:</em> Generates a feature map for all voxels that contains geometric detail and texture information.</p>
<p>Which of these two you should finetune depends on your needs. Let us look at the case of the “screws and bolts” subset of the MCB dataset. Every so often, we would generate objects that had either:</p>
<ul>
<li>nonsensical global geometry</li>
<li>incomplete generations at tricky camera angles</li>
<li>strange appendages</li>
</ul>
<p>We found that finetuning the structured latent flow really focused on the details of the geometry and less on these general problems. Finetuning the sparse structure flow dramatically increased robustness and consistency, even at tricky angles.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/three-challenges-in-finetuning-trellis/input-images_db63aa0e4bd8e72f9bb06a8418cbb1b4_800.webp" alt="Input images used as condition for TRELLIS mesh generation."><figcaption><em>Input images used as condition for TRELLIS mesh generation.</em></figcaption></figure>
<figure class="post-figure"><img src="https://datameister.ai/blog/three-challenges-in-finetuning-trellis/raw-generation_88a059dc90cda4f56338e416b243bb9a_800.webp" alt="Generated meshes with the base TRELLIS model."><figcaption><em>Generated meshes with the base TRELLIS model.</em></figcaption></figure>
<figure class="post-figure"><img src="https://datameister.ai/blog/three-challenges-in-finetuning-trellis/finetuned-generation_fd3cd6c925e685c44529ee0e1bdde8df_800.webp" alt="Generated meshes with a finetuned sparse structure flow model."><figcaption><em>Generated meshes with a finetuned sparse structure flow model.</em></figcaption></figure>
<h2>2. Challenges of finetuning Trellis’ sparse structure flow</h2>
<p>In our experience, finetuning the sparse structure flow consistently ran into <strong>three bottlenecks</strong>:</p>
<p><strong>Data</strong> availability and consistency</p>
<p>GPU <strong>memory</strong> constraints</p>
<p>Rapid <strong>overfitting</strong></p>
<p>In the next three sections we will go over each of these, starting with the input data.</p>
<h3>2.1 Data: quantity, quality and preprocessing cost</h3>
<p>As with most finetuning workflows, training data is a critical component in a successful finetuning. There are a few aspects to keep in mind here:</p>
<h4>How much data is enough?</h4>
<p>Part of the answer to that question is how varied your input meshes are. For example:</p>
<p>A subset of ~2000 motors and rotors in MCB proved difficult to finetune due to high diversity in general shape.</p>
<p>A subset of ~1000 screws with similar global geometry converged much more reliably.</p>
<p>As a rule of thumb:</p>
<p><strong>High variation</strong> across geometric shapes <strong>hurts convergence</strong> more than limited data volume.</p>
<p>A few thousand relatively <strong>homogeneous</strong> objects are often sufficient.</p>
<p>For niche applications, smaller datasets can still work if the geometry is consistent.</p>
<h4>Data quality matters</h4>
<p>Trellis training was performed on data that passes a filter on an “aesthetic score”, meaning the object is clean and well-modeled. The cleaner your input data will be, the easier of a time you will have. Avoid open meshes and noisy appendages.</p>
<h4>Processing: the hidden cost</h4>
<p>One of the largest hurdles if you have a big, high-quality dataset comes from the preprocessing steps. Trellis provides a preprocessing toolkit that</p>
<p>downloads the input meshes</p>
<p>renders ~150 views per object to create feature maps</p>
<p>voxelizes and normalizes the meshes</p>
<p>encodes meshes to the relevant latent spaces</p>
<p>creates renders for image conditioning</p>
<p>bundles all information into a metadata file used by the training dataloaders</p>
<p>This all works very fluently out-of-the-box, but depending on the resources you have available, this can take a long time.</p>
<p>For a set of about <strong>1000</strong> objects, the whole pipeline took a little over <strong>24 hours</strong> to run on a single RTX4090. The largest bottleneck here was the rendering needed to create the feature maps and conditioning, taking up <strong>80% of that time</strong>. In the traditional toolkit, this rendering step is also responsible for normalizing meshes used as ground truth during the training process, making it a required part of the pipeline.   </p>
<p>Storage is a second constraint here. This same subset of 1000 objects resulted in <strong>~60GB</strong> of intermediate files. Scaling this up to larger datasets of say 16000 objects would require close to 1TB of disk space. About <strong>85%</strong> of these files are feature renders and feature maps.   </p>
<p><strong>If your focus is on sparse structure for geometry</strong>, you can bypass these issues with a few minor changes to the toolkit so there is no need to run the initial rendering. This means you can get your dataset ready in a couple of hours and need much less disk space.</p>
<p>With the data pipeline reviewed, the next bottleneck becomes GPU memory.</p>
<h3>2.2 Memory</h3>
<p>A second challenge that immediately becomes apparent when launching a finetuning job is GPU memory. For a batch size of 1, GPU memory usage immediately surged to ~<strong>20GB</strong> with the default settings. This makes running a larger batch size for more stable training unfeasible.</p>
<p>Several practical adjustments can be made to overcome this bottleneck:</p>
<p>**Mixed precision training:**Switching from fixed to mixed precision freed up substantial memory, allowing batch sizes of up to 8.</p>
<p><strong>Gradient accumulution:</strong><br>Trellis effectively supports gradient accumulation through its batch splitting settings. During training, batches are split into smaller micro-batches that are processed sequentially, with gradients aggregated before a single optimizer step. This allows for larger <em>effective</em> batch sizes without loading all samples into GPU memory at once.</p>
<p>Once memory constraints are addressed, overfitting becomes the dominant failure mode.</p>
<h3>2.3 The overfitting problem</h3>
<p>Early experiments consistently showed steadily decreasing training loss, while validation loss began increasing after roughly 3,000 iterations. Visual inspection of generated samples revealed that while the model had learned the general structure of the input meshes, it <strong>emphasized a small set of features</strong> from the most dominant substructure in the data and applied them across all test samples.</p>
<p>A key lesson was that decreasing <strong>training loss alone is a poor indicator of generalization quality</strong>. The default Trellis training setup lacks validation loops, and once these were added, the divergence between training and validation behavior became obvious. Although small training sets played a role, further adjustments were needed to achieve stable and robust finetuning.</p>
<h4>Freezing layers</h4>
<p>The image-conditioned Trellis model is quite large with its <strong>550 million</strong> trainable parameters. It would be fair to assume that overfitting could be mitigated by only finetuning a fraction of those parameters. You could for example freeze all blocks of the flow model and only leave the final block and the output layer unfrozen. This leaves you with only <strong>8%</strong> of the original parameters.</p>
<p>In practice, this approach did not work and the model did not learn anything. Both training and validation loss remained stagnant over the course of a few hundred thousand iterations. It seems like the last few layers on their own can not cover for new patterns.</p>
<p>A more flexible alternative is to use low-rank adaptation (<strong>LoRA</strong>), which enables parameter-efficient finetuning across the full model. While LoRA is well established in language and diffusion models, its use in 3D generative models remains limited and is not supported out-of-the-box in Trellis. As strong results were already obtained through data curation and hyperparameter tuning, we did not explore a LoRA here, but we are excited to give it a try.</p>
<h2>3. How about Trellis 2?</h2>
<p>Microsoft recently released the <a href="https://microsoft.github.io/TRELLIS.2/">second version</a> of their Trellis model, appropriately named Trellis 2. There are a few big changes, which we discussed in a <a href="https://datameister.ai/blog/trellis-2-controlled-3d-generation">previous blog post</a>, but what does it mean for finetuning?</p>
<p>At first sight, it does not seem to impact many of the aspects we have discussed above. The first part of the pipeline - where sparse structure is created - seems largely unaffected. However, if you are more interested in finetuning the detailed geometry and texture generation models, you will find some updates that will have impact on your finetuning experience.</p>
<p>The first big change will be in the <strong>data preprocessing</strong>. As Trellis 2 uses a native representation of the geometry detail and appearance features, there is no more need for the bulk of the rendering. In its place, you will have to preprocess the o-voxel translation, which is said in the paper to take only a few seconds on CPU. This is a big speedup compared to the rendering technique.</p>
<p>Secondly, it should be able to deal with open and non-manifold meshes much better. This means that <strong>non-standard meshes</strong> in your dataset should have a <strong>less negative impact</strong> on your finetuning process.</p>
<p>Finally, Trellis 2 introduces <strong>three flow models instead of two</strong>, splitting the second stage into separate geometric detail and texture flows, which could enable <strong>more targeted and parameter-efficient finetuning</strong>.</p>
<p>As the full training code and dataset toolkit has not been released yet at the time of writing, we have not had a chance to play around with finetuning Trellis 2. However, we are excited to do so as soon as possible!</p>
<h2>Closing Remarks</h2>
<p>Finetuning Trellis is less about finding the right configuration and more about understanding where the model is brittle. Meaningful improvements came from choosing the right component to finetune, curating consistent training data, and closely monitoring generalization rather than relying on training loss alone.</p>
<p>At Datameister, we continue to explore and refine finetuning strategies for Trellis and other 3D generative models, with a focus on robustness, consistency, and real-world deployment. If you have an application that requires accurate and dependable 3D generation, do not hesitate to <a href="https://datameister.ai/contact-us/">reach out</a>!</p>
]]></content:encoded>
    </item>
    <item>
      <title>Trellis 2: Scaling 3D Generation with Improved Efficiency and Control</title>
      <link>https://datameister.ai/blog/trellis-2-controlled-3d-generation/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/trellis-2-controlled-3d-generation/</guid>
      <pubDate>Mon, 22 Dec 2025 21:55:52 GMT</pubDate>
      <dc:creator>Larsen D'hiet</dc:creator>
      <category>Lab</category>
      <category>3D Generation &amp; Reconstruction</category>
      <description>How Trellis 2 uses native 3D Omni-Voxels and efficient latent compression to enable scalable, physically grounded 3D generation.</description>
      <content:encoded><![CDATA[<figure class="post-figure"><img src="https://datameister.ai/blog/trellis-2-controlled-3d-generation/image_516f572fa2e3fd00170f3d03780cb9d2.webp" alt="Trellis 2: Scaling 3D Generation with Improved Efficiency and Control"></figure>
<blockquote>
<p>In a year marked by rapid advances in 3D generative modeling, Trellis 2 makes for one of the most exciting architectural updates this year. It introduces Omni-Voxels, a native 3D representation that encodes geometry and PBR materials directly in aligned 3D space. Combined with the new Sparse Compression VAE, this enables more efficient compression of very high-resolution assets at improved inference speeds.</p>
<p>Because the sparse, surface-based structure is preserved, Trellis 2 maintains strong support for masked generation and localized edits, now operating on a more compact and better-aligned latent representation. Geometry and materials are handled separately, making edits more predictable and ensuring material consistency under topology changes.</p>
<p><strong>Result:</strong> a scalable 3D generation pipeline with higher fidelity, improved computational efficiency, and significantly better editability and control for real-world design workflows.</p>
</blockquote>
<p>2025 was the year where 3D generation finally took off and matured from research demos to early adoption in several industries. 3D generative AI enables fast ideation in design workflows, allowing to explore bold ideas faster and explicitly in 3D. Datameister has created precise control and editing capabilities such as masked generation for 3D generative models. These capabilities already serve several design studios in automotive, fashion and medical industries.</p>
<p>One of the biggest open-source releases in this field was definitely <a href="https://microsoft.github.io/TRELLIS/">Trellis</a> by Microsoft, released in December 2024. It was one of the first models that was worth the name “foundation model” for 3D asset. Trellis incorporates knowledge on 3D geometry and texture directly into its architecture. For a full introduction on Trellis and 3D generative modeling in general, you can read <a href="https://app.storychief.io/datameister/stories/774514/edit#/">this blog post</a> by our colleague Jarne.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/trellis-2-controlled-3d-generation/image_516f572fa2e3fd00170f3d03780cb9d2_800.webp" alt="Trellis 2 sets the new standard for 3D generative modeling"><figcaption><em>Trellis 2 sets the new standard for 3D generative modeling</em></figcaption></figure>
<h2>Introducing Trellis 2</h2>
<p>Last week, the Trellis authors released follow-up work with the unsurprising name <strong>Trellis 2.</strong> The release further scales 3D generation and improves the underlying latent representations. It is a 4B parameter model, doubling the size of the previous release, representing a significant step forward for 3D generative modeling for the following reasons:</p>
<p>Direct integration of <strong>PBR material</strong> representations in the pipeline</p>
<p>Flexibletrade-off between the <strong>granularity of the 3D voxel grid</strong> and the <strong>generation speed</strong></p>
<p><strong>Ability to upsample</strong> geometries and according materials</p>
<p><strong>Improved overall quality</strong> in both reconstruction and visual fidelity</p>
<p>Trellis 2 is able to handle structures of up to 1536 x 1536 x 1536 voxels with generation within ~60 seconds on a single H100 GPU. The biggest architectural changes leading to these results can be found in the way that 3D assets are encoded in Structured Latents (SLat’s):</p>
<p>a novel sparse 3D voxel structure called <strong>Omni-Voxel representation (O-Voxels</strong>) encodes precise geometry and complex textures simultaneously</p>
<p>a new compression architecture <strong>Sparse Compression VAE</strong> replaces the original flow transformer VAE. Itconverts the O-Voxels into SLat’s with impressive downsampling efficiency</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/trellis-2-controlled-3d-generation/trellis-2-encoder_152da0525aadab799f30dfc83233b084_800.jpg" alt="The most important innovations in the Trellis 2 encoder (source: from the Trellis 2 project page)"><figcaption><em>The most important innovations in the Trellis 2 encoder (source: from the <a href="https://microsoft.github.io/TRELLIS.2/">Trellis 2 project page</a>)</em></figcaption></figure>
<p>The sparse voxel structure of Trellis is retained, ensuring editing and masked generation are still possible. This is one of the most important reasons we started using Trellis in the first place. As we will point out below, O-Voxels actually make Trellis 2 even more suited for these type of tasks. Let’s go through the two main innovations in detail, and see how they affect the use of Trellis 2 in practice!</p>
<h2>Omni-voxels: the building blocks of Trellis 2</h2>
<p>In the original Trellis architecture, 3D feature maps of the asset were obtained by taking renders of the original mesh. From these renders, DinoV2 features were extracted and projected onto a voxelized structure. This came with several disadvantages: details and sharp edges were easily lost, open parts of the mesh were hard to handle, and lighting effects were baked into the textures. Moreover, feature extraction from DinoV2 slowed down the pipeline.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/trellis-2-controlled-3d-generation/image_d87b561b5303b7e25e786f19326632eb_800.webp" alt="O-Voxels replace the voxelized structure obtained through projection of 2D DinoV2 features in the original Trellis architecture. This allows for near-instant conversion between 3D assets and voxelized structure."><figcaption><em>O-Voxels replace the voxelized structure obtained through projection of 2D DinoV2 features in the original Trellis architecture. This allows for near-instant conversion between 3D assets and voxelized structure.</em></figcaption></figure>
<p>The Trellis 2 authors introduce the <strong>Omni-Voxel representation</strong> instead**,** a native type of mapping that can be instantly derived from the original asset. An O-Voxel is essentially a collection of parameter tuples (<em><strong>fshape(i), fmat(i), p</strong>)</em>:</p>
<p><em><strong>fshape(i)</strong></em> contains geometric parameters for creating a <em>Flexible Dual Grid</em>, a representation that takes into account edge intersection information of the mesh with the voxel grid</p>
<p><em><strong>fmat(i)</strong></em> holds material properties, including the base color, metallic ratio, roughness, and opacity following standard <em>physically-based rendering (PBR)</em> conventions. These properties are pooled per voxel in the dual grid</p>
<p><em><strong>p</strong></em> simply denotes the coordinate of the i-th voxel</p>
<p>As in the original Trellis architecture, features only exist on the surface of the mesh, creating a sparse voxel structure. Geometry and appearance now live in the same latent space and will be spatially aligned during generation.</p>
<h3>Bi-directional translation</h3>
<p>O-Voxels are essentially voxelized information about the mesh grounded in physical reality. This makes the process of O-Voxelization <strong>optimization- and rendering-free.</strong> Creating a voxelized structure from the mesh of a 3D asset therefore only takes a few seconds on CPU. Moreover, because of their algorithmic nature, O-Voxels can be easily converted back to a mesh.</p>
<p>The bidirectional conversion between O-Voxels and meshes implies that the output of Trellis 2 can <em>only</em> be a mesh. The original Trellis architecture also had output decoders for Gaussian Splats and Neural Radiance Fields. Users of Trellis 2 interested in these 3D representations will have to rely on other methods to convert the resulting meshes into Gaussian Splats or RF’s.</p>
<h2>Sparse Compression VAE</h2>
<p>The second important change in Trellis 2 comprises the Sparse Compression VAE (SC-VAE). This VAE is no longer flow-transformer based, but is a fully convolutional network. It is specifically designed to achieve <strong>high-ratio</strong> <strong>voxel size downsampling</strong>. This results in a compact latent space, even for high-resolution voxel structures (up to 1536 x 1536 x 1536), while remaining <strong>computationally efficient</strong>.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/trellis-2-controlled-3d-generation/image_ad69b93372509e502d703f0613875cd4_800.webp" alt="The dedicated design of SC-VAE focuses on efficiency for high-resolution feature maps"><figcaption><em>The dedicated design of SC-VAE focuses on efficiency for high-resolution feature maps</em></figcaption></figure>
<p>The dedicated design of the SC-VAE allows for an impressive 16x downsampling ratio. A fully textured 1024 x 1024 x 1024 asset can then be encoded in only around 9.6k latent sparse surface voxels on average. The authors furthermore programmed <strong>Triton kernels</strong> to create a custom high-performance backend for the SC-VAE called <em>FlexGMM.</em> This backend is compatible with both NVIDIA and AMD (in theory) to further speed up inference and training.</p>
<h2>Generative modeling</h2>
<p>O-Voxelization and the SC-VAE are essential in the first training stage of Trellis 2. In this stage, the SC-VAE learns effective Structured Latent representations (SLat’s) from the training data. Generative modeling is the second step, turning a text or image prompt into SLat’s and aligning them with the previously learned representations. They are subsequently decoded by the SC-VAE to an O-Voxel grid, which can then be converted back to the final output mesh.</p>
<p>The generation process in Trellis 2 consists of three steps instead of two in the original Trellis architecture:</p>
<p><strong>Sparse structure generation:</strong> predicting the sparse voxel grid i.e., which voxels are active. This first step has remained identical.</p>
<p><strong>Geometry generation</strong>: geometry latents are predicted independently from material latents in this second step. For this, a first SC-VAE is trained to only model shape latents. The decoded result of this is the <em><strong>fshape</strong></em> parameters of the final O-Voxels.</p>
<p><strong>Material generation:</strong> a novel material generation stage models PBR materials directly in the native 3D space, jointly conditioned on the input image and predicted geometry latents. A second SC-VAE is trained for this, similarly conditioned on the first SC-VAE shape latents. The decoded result of this is the <em><strong>fmat</strong></em> parameters of the final O-Voxels.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/trellis-2-controlled-3d-generation/image_f9bd0593798824bdbb5736d9db8a2b39_800.webp" alt="End-to-end generation pipeline of Trellis 2"><figcaption><em>End-to-end generation pipeline of Trellis 2</em></figcaption></figure>
<p>Trellis 2 thus splits the SLat generation step in two parts, making use of the fact that an O-Voxel is described by a geometrical feature and a material feature independently from one another. This ensures materials remain consistent under arbitrary topology.</p>
<h2>Conclusion</h2>
<p>Trellis 2 sets a new benchmark for foundational 3D models by combining native 3D representations with efficient compression and more robust generative stages. The shift to Omni-Voxels and geometry–material decoupling results in higher fidelity assets, faster processing, and better alignment with real-world 3D workflows, especially where control and physical correctness matter most.</p>
<p>We have already started integrating Trellis 2 in our pipelines, and the results look promising. If you are looking to bring state-of-the-art 3D generative models into reliable, production-grade workflows, Datameister is ready to help you turn cutting-edge research into real-world impact.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Why DETRs are replacing YOLOs for real-time object detection</title>
      <link>https://datameister.ai/blog/detection-transformers-real-time-object-detection/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/detection-transformers-real-time-object-detection/</guid>
      <pubDate>Fri, 21 Nov 2025 10:26:11 GMT</pubDate>
      <dc:creator>Larsen D'hiet</dc:creator>
      <category>Lab</category>
      <category>Perception</category>
      <description>Real-time Detection Transformers as a superior, Apache-2.0-licensed alternative to YOLOs for object detection: RT-DETR, D-FINE and DEIMv2.</description>
      <content:encoded><![CDATA[<figure class="post-figure"><img src="https://datameister.ai/blog/detection-transformers-real-time-object-detection/od-example-visualized_16ec1452d326a4e59a81390fcb7a8454.jpg" alt="Bounding-box object detection on a living-room photo, labelling a dog, two chairs, and a potted plant each with a confidence score"></figure>
<blockquote>
<p><strong>TL;DR</strong> Detection Transformers (DETRs) have matured into real-time–capable detectors that now outperform YOLO models in accuracy at comparable inference speeds. Key innovations like deformable attention, denoising training, and top-k query selection paved the way for real-time DETRs, with D-Fine as the most notable recent advancement.</p>
<p>All DETR architectures are released under the permissive Apache 2.0 License, making them easy to adopt and modify in commercial settings. This removes the licensing hurdles common in other detector families and enables fully proprietary deployments without friction.</p>
<p><strong>Result:</strong> At Datameister, we’ve integrated these state-of-the-art DETR models into our vision library to deliver accurate, efficient, production-ready detection systems for specialized real-world use cases.</p>
</blockquote>
<p><strong>Real-time object detection</strong> lies at the heart of any system that must interpret visual data efficiently, from video analytics pipelines to autonomous robotics. Detector architectures for such tasks need to deliver both high throughput and accuracy in order to excel.</p>
<p>In our own pipelines, we phased out older CNN-based detectors in favor of <strong>D-Fine</strong>, a more recent model that is part of the <strong>DEtection Transformer (DETR)</strong> family. Transformer-based detectors have matured quickly, and D-Fine in particular provides stronger accuracy while maintaining competitive inference speed.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/detection-transformers-real-time-object-detection/od-example-visualized_3e507334b0026ef2f4ee9ee67af43a89_800.jpg" alt="Our office dog Nala sitting on a chair, as detected our own D-Fine model in the DM vision library."><figcaption><em>Our office dog Nala sitting on a chair, as detected our own D-Fine model in the DM vision library.</em></figcaption></figure>
<p>YOLO has long been the leading standard for real-time detection, but the latest DETR variants are now consistently proving to be the better alternative. Beyond the accuracy gains, an equally important advantage is the far more permissive license that comes with it.</p>
<h2>YOLO’s licensing issue</h2>
<p>The <strong>YOLO series</strong> is developed and maintained by <a href="https://www.ultralytics.com/">Ultralytics</a>. All YOLO code and weights are released under the <strong>AGPL-3.0 license</strong>. Long story short, this license only allows commercial usage under the strict condition that any code modifications or weights should be made publicly available. On the contrary, all DETR models to date were released under the <strong>Apache 2.0 License,</strong> allowing for free use and modifications for commercial and proprietary use.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/detection-transformers-real-time-object-detection/image-2000png-2000jpg_04eaadcd37c4f3ea8c1eda8a873bf8fe_800.jpg" alt="Comparison table: the YOLO series is licensed AGPL-3.0 (publish your code or pay for an enterprise license), while DETR models are Apache 2.0 (free to modify and use)"></figure>
<p>Next to licensing, there are others reasons why we like working with DETRs:</p>
<p>DETRs treat object detection as a direct set-prediction problem. This <strong>eliminates hand-crafted components</strong> such as <em>non-maximum suppression</em> that introduce additional hyperparameters and slow down the detection pipeline.</p>
<p>Modern GPU architectures are heavily optimized for <strong>efficient attention operations</strong> such as <em><a href="https://github.com/Dao-AILab/flash-attention">flash attention</a>,</em> making transformers increasingly more suitable for real-time applications.</p>
<p><strong>Transfer learning****from vision foundation models</strong> such as the recent <a href="https://ai.meta.com/dinov3/">DINOv3</a> fundamentally augments the capabilities of DETRs.</p>
<p>We have had nothing but great experiences with DETRs so far. They adapt remarkably well to new datasets, even when trained from scratch. For the right use cases, pre-training the models on datasets such as <a href="https://cocodataset.org/#home">COCO</a> and <a href="https://www.objects365.org/overview.html">Objects365</a> further boosts performance. About time for a post on this exciting topic!</p>
<blockquote>
<p><strong>About the author</strong></p>
<p>I am Larsen, AI Engineer at Datameister and part of the journey since the early days of the company. I like finding the intersection between state-of-the-art research and practical system design, where real-life systems can be powered by frontier AI algorithms. For this blogpost, I dove deep into the details of DETR and its successors and distilled the most important insights in a short read. Go grab a coffee and enjoy this one!</p>
</blockquote>
<p>A short overview of what you can expect of the remainder of this blogpost. We will:</p>
<ul>
<li>dive in detail into the <strong><a href="https://arxiv.org/pdf/2005.12872">original DETR paper</a></strong> to understand its <strong>core concepts</strong>;</li>
<li>discuss the <strong>most important advancements</strong> leading to the real-time adoption of DETRs;</li>
<li>compare two leading DETR models to the latest YOLO 11 model to draw some important conclusions.</li>
<li>Let’s go!</li>
</ul>
<h2>DETR: transformer for NMS-free object detection</h2>
<p>All Detection Transformer architectures have the same underlying structure. A (CNN-) backbone is used to extract image features. These features are fed to a <strong>transformer encoder-decoder structure</strong> that is able to predict accurate bounding boxes for object in the image. The resulting N decoder output embeddings are independently projected to bounding box coordinates and class labels.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/detection-transformers-real-time-object-detection/image_5b59ab6829a87639640ddfe3115a5543_800.webp" alt="High-level overview of the DETR architecture, adapted from the original paper (2020)"><figcaption><em>High-level overview of the DETR architecture, adapted from the <a href="https://arxiv.org/pdf/2005.12872">original paper (2020)</a></em></figcaption></figure>
<h3>Why transformers?</h3>
<p>Intuitively, the encoder in DETR transforms the dense backbone features into a <strong>semantically structured representation</strong> of the image that captures relationships between regions through global self-attention.</p>
<p>The <strong>transformer</strong> <strong>decoder</strong> takes a fixed set of <strong>N</strong> <strong>learned object queries,</strong> each representing a potential object slot. It then iteratively refines these to produce final <strong>bounding boxes and class predictions</strong>. It does this through two attention operations:</p>
<p><strong>Self-attention</strong> among the queries, enabling them to model interactions and avoid duplicate detections (e.g., two queries focusing on the same object).</p>
<p><strong>Cross-attention</strong> between the queries and the encoder’s output features, allowing each query to attend to the most relevant parts of the image and extract the corresponding visual evidence.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/detection-transformers-real-time-object-detection/image_d4035f5ce92094a3e64a5dde017988d7_800.webp" alt="Attention layer in the DETR decoder. The output embedding of the cross-attention module serves as the content query for the next layer. The output features of the encoder are the key and value for cross-attention. The positional query is learnable and shared over self-attention and cross-attention in all layers"><figcaption><em>Attention layer in the DETR decoder. The output embedding of the cross-attention module serves as the content query for the next layer. The output features of the encoder are the key and value for cross-attention. The positional query is learnable and shared over self-attention and cross-attention in all layers</em></figcaption></figure>
<p>Through the clever use of attention in the decoder, DETR replaces traditional components like anchor boxes and non-maximum suppression with a <strong>fully end-to-end transformer-based detection process.</strong></p>
<h3>Direct set prediction</h3>
<p>DETR reframes object detection as a <strong>direct set-prediction problem.</strong> Given an image, it predicts a fixed set of Nbounding boxes corresponding to the object queries. Because N typically exceeds the number of actual objects, many predictions correspond to a special “no-object” class and are discarded at inference. During training, the <em><a href="https://en.wikipedia.org/wiki/Hungarian_algorithm">Hungarian algorithm</a></em> performs bipartite matching between predicted and ground-truth boxes, ensuring each ground-truth box is paired with exactly one prediction in a permutation-invariant way. The loss is then computed on these matched pairs.</p>
<h2>Overcoming DETRs shortcomings</h2>
<p>Despite its elegance and powerful prediction paradigm, <strong>slow training converge</strong> and <strong>low performance on small objects</strong> limited adoption in practical systems early on. Over the years, several enhancements drastically improved the performance of Detection Transformers:</p>
<p><strong><a href="https://arxiv.org/pdf/2010.04159">Deformable DETR</a></strong> introduced <em>deformable attention,</em> an efficient multi-scale attention mechanism tailored to the task of object detection.</p>
<p>The authors of <strong><a href="https://arxiv.org/pdf/2104.01318">Efficient DETR</a></strong> were the first to use <em>top-k query selection</em> for better initialization of the object queries for the decoder.</p>
<p><strong><a href="https://arxiv.org/pdf/2203.01305">DN-DETR</a></strong> drastically improved training convergence using <em>an auxiliary denoising task</em> of training bounding boxes.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/detection-transformers-real-time-object-detection/image_4bd22fe7cc0b0dcb70c06cabec1c7d90_800.webp" alt="DETR evolution throughout time. Real-time variants arose from 2024 in two families: the RT-DETR family indicated in blue, and the LW-DETR indicated in purple."><figcaption><em>DETR evolution throughout time. Real-time variants arose from 2024 in two families: the RT-DETR family indicated in blue, and the LW-DETR indicated in purple.</em></figcaption></figure>
<h2>Real-time transformer object detection</h2>
<p>From 2024 onwards DETRs really started to challenge YOLO in real-time detection, eventually surpassing them in accuracy while remaining competitive in speed and efficiency. There are two schools of thought that compete for the state-of-the art nowadays:</p>
<p><strong><a href="https://arxiv.org/pdf/2304.08069">RT-DETR</a></strong> (<em>real-time DETR</em>) sticks to the original DETR architecture and focuses on optimizing the encoder and the initialization of the object queries. <strong><a href="https://arxiv.org/pdf/2410.13842">D-Fine</a></strong> currently leads this family with a heavily optimized training strategy centered on the decoder. Very recently, <a href="https://github.com/Intellindust-AI-Lab/DEIMv2">DEIMv2</a> extends it further by integrating DINOv3 features in its backbone.</p>
<p><strong><a href="https://arxiv.org/pdf/2406.03459">LW-DETR</a></strong> (<em>light-weight DETR</em>) adopts a simpler idea: replace the traditional CNN backbone and encoder with a pure Vision Transformer (ViT). <a href="https://github.com/roboflow/rf-detr">RF-DETR</a> (<a href="https://roboflow.com/">Roboflow</a> DETR) leverages this especially well by starting from a pretrained DINOv2 encoder.</p>
<p>Work on Detection Transformers is very much alive: DEIMv2 was released less than two months ago, while Roboflow put their paper on RF-DETR on Arxiv just last week!</p>
<h2>Object detection performance</h2>
<p>How do these advancements reflect on performance benchmarks? The figure here underneath summarizes the performance of YOLO11, D-Fine, and RF-DETR for relevant model sizes on the well-known <a href="https://cocodataset.org/#home">COCO dataset</a>.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/detection-transformers-real-time-object-detection/image_a93b0e8ccefb87267819c6c24392f8fa_800.webp" alt="Performance comparison between leading model architectures for their corresponding nano (N), small (S), medium (M), and large (L) variants. Indicative latency measures for each model size indicated between brackets.*Not pretrained on Objects365 dataset **RF-DETR L is not released yet"><figcaption><em>Performance comparison between leading model architectures for their corresponding nano (N), small (S), medium (M), and large (L) variants. Indicative latency measures for each model size indicated between brackets.<br>*Not pretrained on Objects365 dataset **RF-DETR L is not released yet</em></figcaption></figure>
<p>Some important take-aways from these numbers:</p>
<p>Both D-Fine and RF-DETR clearly outperform YOLO 11 for all sizes.</p>
<p>RF-DETR’s smaller models stand out, with the nano variant outperforming the others by a wide margin. This is likely because RF-DETR-N already benefits from a strong DINOv2 backbone.</p>
<p>D-Fine’s performance scales the best with model size, with the large variant scoring a whopping 57.4 mAP.</p>
<h3>Parameter count</h3>
<p>So, RF-DETR for small, very fast models and D-Fine when things get more complex? There is another side to the story. To finish of this post, I’d like to highlight an important difference between D-Fine and RF-DETR. For that, let’s take a look at the following figure:</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/detection-transformers-real-time-object-detection/image_1eef5c7f630a2f794ef2fdec8dbab23f_800.webp" alt="Model sizes in million parameters for YOLO11, D-Fine and RF-DETR for their corresponding nano (N), small (S), medium (M) and large (L) variants. YOLO11 shows the best downward trend for larger model sizes with D-Fine close."><figcaption><em>Model sizes in million parameters for YOLO11, D-Fine and RF-DETR for their corresponding nano (N), small (S), medium (M) and large (L) variants. YOLO11 shows the best downward trend for larger model sizes with D-Fine close.</em></figcaption></figure>
<p>One of the first things to stand out is that D-Fine and YOLO11 become significantly lighter as their model sizes shrink, while RF-DETR’s parameter count declines by only around 5 million. This somewhat surprising observation results from the fact that RF-DETR was trained with a technique called <strong>Neural Architecture Search (NAS).</strong> NAS automatically finds network architectures that are Pareto optimal for the accuracy-latency trade-off.</p>
<p>Interestingly, the “small” RF-DETR architectures found by NAS end up only slightly lighter than the “large” variants. RF-DETR model sizes thus reflect <em>speed</em> rather than parameter count. D-Fine‘s model sizes on the contrary are on par with YOLO 11, making them the <strong>more versatile DETR architecture</strong> that can be adapted in a wide range of scenarios, including resource-constrained edge environments.</p>
<h2>Conclusion</h2>
<p>Real-time Detection Transformers represent one of the most significant recent shifts in computer vision. Their rapid evolution shows how transformers have become not only viable but actually <strong>preferred in scenarios that demand both high speed and high accuracy</strong>, even in resource-constrained scenarios. Just as important, their Apache 2.0 License makes them easy to use, enabling practical adoption beyond academic benchmarks.</p>
<p><strong>D-Fine and RF-DETR</strong> have set the new standard for real-time object detection moving forward. D-Fine shows the best scaling in both speed, accuracy, and model size. The small RF-DETR variants are remarkably accurate and fast for their size, but the bigger models fall short of D-Fine when evaluated on the well-known COCO dataset. However, the field keeps on changing rapidly, so we’ll keep on tracking progress on both to make the best possible choices for every problem.</p>
<p>If you’re working on demanding detection problems where accuracy, robustness, and efficiency matter, we can help. We tailor DETR-based models to your specific application, integrate them in video processing pipelines on our <a href="https://datameister.ai/what-we-do/">DM platform</a>, and set up <strong>continuous improvement loops</strong> to ensure performance keeps rising as new data comes in. <a href="https://datameister.ai/contact-us/">Reach out</a>; we’d be excited to turn cutting-edge Detection Transformer research into real, production-grade impact for your system.</p>
<h3></h3>
]]></content:encoded>
    </item>
    <item>
      <title>Automated Retopology for 3D Assets</title>
      <link>https://datameister.ai/blog/ai-automated-retopology/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/ai-automated-retopology/</guid>
      <pubDate>Thu, 23 Oct 2025 08:11:52 GMT</pubDate>
      <dc:creator>Thibaud Despriet</dc:creator>
      <category>Lab</category>
      <category>3D Generation &amp; Reconstruction</category>
      <description>Retopomeister is a prototype AI tool for automated 3D asset retopology, preserving anatomy, symmetry and UVs while cutting manual work.</description>
      <content:encoded><![CDATA[<figure class="post-figure"><img src="https://datameister.ai/blog/ai-automated-retopology/thumbnail_a850df4d86763a2031cb3b61197c98d1.jpg" alt="Automated Retopology for 3D Assets"></figure>
<blockquote>
<h4>TL;DR</h4>
<p>Clean, anatomy-aware retopology remains a critical bottleneck that current manual, semi-automatic, and fully automatic tools only partly solve. Retopomeister detects anatomical anchors, selects curated source topologies, and uses neural wrapping to transfer them onto target meshes - while keeping artists in control.</p>
<p>By transferring production-ready metadata like UVs, vertex groups, and seams, it streamlines the entire pipeline. The prototype hints at what’s next: richer keypoints, interactive loop sketching, and an iterative, artist-in-the-loop workflow.</p>
<p><strong>Result:</strong> anatomy-aware, production-ready topology with intact UVs and seams - faster iteration, smoother deformation, less cleanup.</p>
</blockquote>
<p><strong>Retopology, the tedious craft of untangling chaotic 3D meshes</strong> into clean, production-ready models, is one of the least glamorous time sinks in animation and gaming, and exactly where <strong>AI can shine</strong>. In this blog post we will outline the complexity of the problem and introduce our prototype for AI-based retopology.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/ai-automated-retopology/dense-high-poly-sculpt-vs-retopo_2d88955cecb2888d3eb7e259cd62ea96_800.jpg" alt="Dense, high-poly sculpt on the left with the retopologized clean, quad-only mesh on the right(source: from the author of this Reddit comment)"><figcaption><em>Dense, high-poly sculpt on the left with the retopologized clean, quad-only mesh on the right<br>(source: from the author of <a href="https://www.reddit.com/r/blenderhelp/comments/1de37ad/comment/l89hiup/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button">this Reddit comment</a>)</em></figcaption></figure>
<h2>1. The Retopology Bottleneck</h2>
<p>Every 3D character artist knows that sculpting is only half the journey. Retopology is still needed, as the <strong>dense, high-poly sculpt</strong> stillneeds to be converted into a <strong>primarily quad, clean mesh</strong>. This step is essential for performance, animation, texture mapping and overall compatibility. Modern engines can handle high polygon counts, but <strong>clean retopology is still essential</strong> for characters that need to deform properly, be rigged effectively, or edited reliably.</p>
<p><video autoplay loop muted playsinline width="100%" preload="metadata"><source src="https://datameister.ai/blog/ai-automated-retopology/horse-retopo-walk-padding_98d7af9ca509f1da3c6cc04a9a9ea008.mp4" type="video/mp4"></video></p>
<p><em>Horse in motion with well-structured quad retopology (source: <a href="https://sketchfab.com/3d-models/horse-walk-93b53ddcec414592842753d1819f3133">Sketchfab Horse Walk</a>)</em></p>
<p>Despite its importance, manual retopology continues to be a significant <strong>pain point</strong> for artists, often requiring hours of tedious, repetitive work</p>
<h3>1.1. The complexity of clean topology</h3>
<p>Retopology is slow because it’s not just about placing edges and faces, it’s about carefully <strong>designing loops that follow the anatomy</strong> of the character and making sure these loops lie next to each other in a tidy manner. Artists manually paint edges and vertices so that loops flow naturally around eyes, mouths, shoulders, and joints, ensuring that deformation during animation looks smooth. Every vertex must connect correctly to form continuous edge loops, and even small mistakes can create pinching or stretching when the character moves.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/ai-automated-retopology/human-edge-and-joint-loops-2_98280a786e43d6ca8bed3c2d5f9ef36d_800.webp" alt="Human head mesh with colored facial edge loops Human body mesh with colored joint and limb loops (source: CMU animation) (source: Pinterest)"><figcaption><em>Human head mesh with colored facial edge loops Human body mesh with colored joint and limb loops<br> (source: <a href="https://cmuanimation.weebly.com/topology-referenceguide.html">CMU animation</a>) (source: <a href="https://pin.it/3pUMlyBUP">Pinterest</a>)</em></figcaption></figure>
<p>Semi-automatic tools can fill patches of quads or suggest loops, but due to the wide variety of body shapes and facial structures in animation and gaming, there’s <strong>no one-size-fits-all tool for retopology</strong>. Artists constantly have to adapt, tweak, and reconnect loops to achieve a clean, animation-ready mesh, which is why the process <strong>often takes hours</strong> for a single character.</p>
<h3>1.2. The cost of early mistakes</h3>
<p>Retopology becomes especially tedious because the <strong>loops and connections you create early on dictate the remainder</strong> of the mesh. If an edge loop is misplaced or a vertex is misconnected, it can throw off the flow of nearby loops, causing pinching, stretching, or irregular quads that are <strong>difficult to fix later</strong>. Correcting these mistakes often requires redrawing entire sections of the mesh or even starting over from scratch. The repetitive nature of carefully connecting vertices, edges, and loops, combined with the high stakes of early errors, turns what should be a precise and structured process into a painstakingly slow and frustrating task.</p>
<h3>1.3. Why new 3D generation tools don’t help</h3>
<p>Recently, a number of tools such as <a href="https://www.meshy.ai/discover">Meshy</a>, <a href="https://3d.csm.ai/dashboard/home">Cube</a>, and <a href="https://www.alpha3d.io/">Alpha3D</a> have emerged that generate meshes directly from prompts or sketches. While impressive, these one-step pipelines tend to produce <strong>dense and unstructured topology</strong> that artists can’t easily refine. More importantly, they <strong>strip away creative control</strong>: instead of guiding the design, artists are left to accept or reject a black-box result. For professional character work, that’s <strong>rarely acceptable</strong>. Datameister focuses on <a href="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction">powerful generative tools</a> that give <a href="https://datameister.ai/blog/constraint-aware-3d-generative-design-editable-iterable-manufacturable">control to artists</a> to leverage their skill and experience.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/ai-automated-retopology/meshy-generated-meshes-and-topology-2_713ccefb939b2623abe98260090dd320_800.webp" alt="Some of the meshes generated using Meshy Topology of a generated mesh using Mesh (source: Meshy AI) (source: robot model Meshy AI)"><figcaption><em>Some of the meshes generated using Meshy Topology of a generated mesh using Mesh<br> (source: <a href="https://www.meshy.ai/">Meshy AI</a>) (source: <a href="https://www.meshy.ai/3d-models/Verdant-Sentinel-v2-01966823-44db-7336-ac0b-59a1762ad220">robot model Meshy AI</a>)</em></figcaption></figure>
<p>Our approach flips this around. Instead of automating the parts where artists add value - their vision, design choices, and sculpting - we target the parts they <strong>least</strong> want to do: the repetitive, structural, and technical labor of converting a sculpt into clean, animation-ready topology. By automating the boring, low-value steps, we <strong>leave the artist’s creative freedom untouched</strong> while still delivering a <strong>major productivity boost</strong>.</p>
<p><strong>In the remainder of this post</strong>, I’ll first walk through the tools artists currently use for retopology and highlight where they fall short. Then I’ll introduce <strong>Retopomeister</strong>, our approach to automating character retopology with AI. Finally, I’ll share where we think this technology can go next and how it could transform the character creation pipeline.</p>
<blockquote>
<p><strong>About the author:</strong> I’m Thibaud, an AI Engineer at Datameister passionate about machine learning, AI, and computer vision. What drives me is the transformative power of these technologies to solve real-world problems in novel ways. When I discovered Datameister at a career event, I was immediately drawn to its cutting-edge AI projects and collaborative, driven culture. The combination of technical innovation and team energy made it clear this was the place to grow and contribute meaningfully.</p>
</blockquote>
<h2>2. What’s already out there</h2>
<p>First, I’d like to take a moment to reflect on the current state of retopology tools. The options available to artists today can be grouped into <strong>three main categories of assistance: manual retopo, semi-automatic retopo, automatic retopo</strong>. Each of these categories brings its <strong>own strengths and weaknesses</strong> to the table, offering different balances between control, speed, and usability. Understanding where these approaches excel - and where they fall short - provides <strong>important context</strong> for why we see room for something new.</p>
<p><strong>Manual retopology</strong> is still often considered the benchmark for production quality since it gives artists a high degree of control. Turning a dense sculpt or scan into a clean, low-poly mesh isn’t just about reducing triangle count, it’s about placing quads so loops follow anatomy, so joints bend without pinching, and so details can be added or removed locally using loop cuts without wrecking the rest of the mesh. That’s why artists still sketch, stitch, and hand-place loops around eyes, mouths, shoulders and wrists: those concentric and radial loops act as deformation buffers and make rigging predictable. While manual work is slower for production-quality characters it’s often the only way to guarantee animation-friendly results.</p>
<p><video autoplay loop muted playsinline width="100%" preload="metadata"><source src="https://datameister.ai/blog/ai-automated-retopology/manual-finger-retopo-padding_1daed0b9e12dde9aaafa36ef8367d0ba.mp4" type="video/mp4"></video></p>
<p><em>Manual retopology of a finger from a human mesh (source: <a href="https://www.youtube.com/watch?v=ZycsVBejZN4&t=298s">YouTube video</a>)</em></p>
<p>Most artists, however, don’t rely solely on manual retopology. They use tools and addons for <strong>semi-automatic retopology</strong> that shorten the manual workflow like Blender’s <em>Bsurface</em> or Maya’s <em>Quad Draw.</em> These mostly provide quicker sketch based retopology, allowing for sketching contours, strokes or individual polygons directly and filling it in with patches of quads in real time. These tools speed up the artist but still rely heavily on human guidance by sketching.</p>
<p><video autoplay loop muted playsinline width="100%" preload="metadata"><source src="https://datameister.ai/blog/ai-automated-retopology/blender-bsurface-demo-padding_40484a6cd04c73962d8d145cb1b75d01.mp4" type="video/mp4"></video></p>
<p><em>Blender’s Bsurface using sketches for retopology (source: <a href="https://youtu.be/X2GNyEUvpD4?si=D8L6eaSndSQAKZ9c&t=70">YouTube video</a>)</em></p>
<p>Lastly we have the ideal case of <strong>automatic retopology</strong> tools like ZBrush’s <em>ZRemesher</em>, Blender’s <em>Exoside Quad Remesher</em>, and <em>Instant Meshes.</em> These are mostly not yet the fully automatic one-click done systems, they often still require some sketches or parameter-changing before they work optimally. While they can generate a decent starting point in minutes, their results vary: one model might come out near-perfect, while another needs heavy cleanup. Because of this lacking reliability, it’s often skipped entirely by artists that would rather make the retopo manually with guaranteed result.</p>
<p><video autoplay loop muted playsinline width="100%" preload="metadata"><source src="https://datameister.ai/blog/ai-automated-retopology/quad-remesher-demo-padding_1c7440d1a541fa326109cf3705e61601.mp4" type="video/mp4"></video></p>
<p><em>Blender’s Bsurface using sketches for retopology (source: <a href="https://youtu.be/n8CFx_kLg4s?si=xF34JcagmHJL-vJz&t=170">YouTube video</a>)</em></p>
<p>In short, <strong>manual retopology</strong> is slow but highly reliable, giving artists precise control over loop placement and mesh flow. <strong>Semi-automatic tools</strong> speed up parts of the process, yet still demand careful input and adjustments. <strong>Fully automatic methods</strong> are fast, but often produce edge flows that don’t follow the anatomy, leaving messy areas that need cleanup.</p>
<h2>3. Retopomeister - Automating character retopology</h2>
<p>Other tools we’ve discussed <strong>fall short</strong> in areas where Retopomeister can step in. For automatic retopology, the biggest weakness lies in <strong>loop placement</strong>. These methods may reduce polygon counts and generate meshes that look superficially correct, but their edge loops often fail to follow the underlying anatomy. Another issue is the wrong termination of loops, which is tedious to fix. This misalignment becomes especially problematic for animation, where clean deformation depends on loops flowing around joints and facial features.</p>
<p>That’s why the idea of <strong>reusing an existing source topology</strong> is so compelling. If a source mesh already has anatomically sound loops, why not adapt that proven structure to a new sculpt of the same type? By overlaying a clean, pre-designed topology onto the <strong>target geometry</strong>, we can preserve the advantages of manual artistry while automating the repetitive transfer work.</p>
<p>Retopomeister works through two main mechanisms. The first is <strong>AI-driven keypoint detection</strong>, which identifies important <strong>anchor points</strong> on the target geometry - like the hands, feet, chest, and elbows. The model can detect these points reliably across different meshes and poses.</p>
<p>The second mechanism is <strong>mesh wrapping</strong>, where the <strong>source topology is deformed to fit the target geometry</strong> as closely as possible following the keypoints. This even allows T-pose topologies to be fitted on A-pose geometries and vice versa. Earlier tools, like Blender’s Softwrap plugin, required manual adjustments, moving the mesh over the target like a digital “skin.” Retopomeister automates this process using a <strong>neural network</strong>, fitting the source mesh over the target efficiently.</p>
<p>Together, these systems create an automated pipeline that lets you <strong>retopologize a new mesh using an existing retopology</strong>.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/ai-automated-retopology/retopo_3db5dace4014edf3a1d88d8c7a3363b0_800.jpg" alt="High-level overview of the key components of Retopomeister, converting an input triangle geometry to a clean, quad mesh"><figcaption><em>High-level overview of the key components of Retopomeister, converting an input triangle geometry to a clean, quad mesh</em></figcaption></figure>
<h3>3.1. Keypoint detection</h3>
<p>The keypoint detection model was trained on a large dataset of humanoid characters, where it learned to reliably identify <strong>12 anatomical anchor points</strong> across different meshes and poses. Because the training process is <strong>unsupervised</strong>, the approach is not limited to humanoids - given the right dataset, the same method could be adapted to creatures, props, or any other mesh type, without the need for manual labeling. For humanoids, the detected keypoints already provide a strong foundation for retopology: the AI consistently finds landmarks like hands, feet, elbows, and chest, which are exactly the areas artists use to guide loop placement.</p>
<p>Importantly, these keypoints are not locked in. After generation, artists can still add, remove, or reposition existing anchors, ensuring they remain in full control of the process. This balance between <strong>AI-driven automation</strong> and <strong>artist-driven fine-tuning</strong> reflects feedback we received directly from professionals. As <a href="https://www.artstation.com/thijsdr">Thijs</a> from studio <a href="https://www.tovenaargames.be/">TOVENAAR</a> put it: <em>“You want a tool that helps as much as possible, but still gives you full freedom to easily make adjustments and doesn’t constrain you.”</em> Retopomeister’s keypoint detection was built with that philosophy in mind.</p>
<h3>3.2. Mesh wrapping</h3>
<p>Mesh wrapping is where the system brings everything together. It takes the <strong>source topology</strong>, the <strong>target geometry</strong>, and the set of <strong>anchor points</strong>, then runs an optimization procedure to deform the source mesh so it matches the target as closely as possible. Earlier solutions, like Blender’s SoftWrap, already offered this kind of fitting but required extensive manual tweaking.</p>
<p><video autoplay loop muted playsinline width="100%" preload="metadata"><source src="https://datameister.ai/blog/ai-automated-retopology/softwrap-demo-padding_bf7bb6de1cdb3659abbb39c9424fe7c7.mp4" type="video/mp4"></video></p>
<p><em>Footage of using Blender’s Softwrap to manually wrap a retopology to a new head mesh (source: <a href="https://superhivemarket.com/products/softwrap">Blender Softwrap</a>)</em></p>
<p>Retopomeister automates this step through a neural model, aligning the source topology to the target in a way that respects both the geometry and the detected anchors. Two variants are available. The <strong>asymmetric mode</strong> works well for characters or objects that are naturally non-symmetric. But based on feedback from artists themselves, we found that in practice, most models are designed symmetrically first, and asymmetry is added later. To support this workflow, we implemented a <strong>symmetric mode</strong> that enforces mirrored deformation. This uses a combination of a soft symmetry loss and explicit averaging of mirror-point pairs, guaranteeing perfect bilateral symmetry while still fitting the overall form. The result is a workflow that adapts to both artistic styles: symmetric by default, asymmetric when needed.</p>
<p>Thanks to <strong>GPU acceleration</strong>, the wrapping process runs significantly faster, with fitting typically completing in <strong>under two minutes</strong>. This short turnaround lets artists adjust anchors or tweak settings and quickly see the results, transforming what was once a slow, CPU-bound process into an efficient, iterative workflow. The added responsiveness makes Retopomeister not only automated, but also fluid and well-suited for everyday production.</p>
<h3>3.3. Source topologies with AI search</h3>
<p>The source topology can be chosen from a database of predefined topologies. Since the starting topology plays a <strong>crucial role</strong> in the entire process, beginning with a poor or only moderately suitable one will inevitably <strong>limit the final result</strong>. That’s why we aim to select the source topology that best matches the target model. The <strong>larger and more diverse</strong> the source topology dataset, the <strong>more powerful</strong> Retopomeister becomes. However, finding the most suitable model can become increasingly challenging as the database grows. To address this, we use an <strong>AI-driven search</strong> algorithm to quickly identify the most relevant source topology for the target geometry.</p>
<p><video autoplay loop muted playsinline width="100%" preload="metadata"><source src="https://datameister.ai/blog/ai-automated-retopology/source-target-selection_96af3713dced26339b7cc6c440bf8b27.mp4" type="video/mp4"></video></p>
<p><em>The source topology and target geometry searching process before anchors and wrapping</em></p>
<p>An important practical upside is that many curated source topologies already carry production-ready metadata - UV unwraps, vertex groups and material seams. When a good source topology is fitted to a target, those asset-level mappings can often be transformed along with the mesh, which can <strong>meaningfully reduce downstream work</strong>.</p>
<h3>3.4. Evaluating the retopology results</h3>
<p>We developed Retopomeister in <strong>collaboration with artists</strong>, gathering feedback from teams like studio TOVENAAR and others. One recurring theme was clear: they didn’t want a tool that dictates creative choices, but one that quietly <strong>takes away the repetitive, low-value labor</strong>. Retopomeister was built with that philosophy.</p>
<p>To measure how well the system actually performs, we also built an in-house evaluation suite called <strong>RetopoCheck</strong>. This tool compares meshes across multiple dimensions: statistics, renders, wireframes, zebra stripes, pixel-wise differences, and geometric metrics like Hausdorff distance and curvature. With this, it becomes easy to spot errors, highlight areas needing improvement, and iteratively refine the system. It’s the same tool we used to tune Retopomeister itself, providing constant <strong>feedback loops for quality</strong>.</p>
<p><video autoplay loop muted playsinline width="100%" preload="metadata"><source src="https://datameister.ai/blog/ai-automated-retopology/retopology-evaluation_d62e458f0761a0d9dca847f40009943c.mp4" type="video/mp4"></video></p>
<p><em>The evaluation generated by Retopocheck to compare retopology quality to the original mesh</em></p>
<p>The results so far have been promising. With strong anchor points and a good source topology, Retopomeister consistently produces meshes with <strong>clean edge loops</strong> and <strong>animation-friendly flow</strong>. Compared to existing tools, the added step of using transferring from a curated source topology and AI-generated anchors gives it a clear edge. The extra inputs don’t limit the method - they actually empower it. We can provide a library of source topologies, while the anchors already come pre-generated and will continue to require less and less artist correction over time.</p>
<p><video autoplay loop muted playsinline width="100%" preload="metadata"><source src="https://datameister.ai/blog/ai-automated-retopology/fullbody-highres_5671224489e1b496644e6d7b8cfeddb6.mp4" type="video/mp4"></video></p>
<p><em>Demo of retopomeister generating anchors and fitting a source topology to a target geometry (in symmetric mode)</em></p>
<h3>3.5. Transferability</h3>
<p>Since the keypoint detector is learned without labels, <strong>adapting Retopomeister to other mesh categories is straightforward</strong>: you only need a modest dataset of meshes from the new category. Retraining the detector produces anchors that reflect the functional parts and geometry of creatures, props, or any other subject, and the rest of the pipeline - source-topology selection and neural wrapping - can be applied unchanged. We validated this by retraining the keypoint model on meshes of cats and observed the same flexible, anchor-driven fitting behavior. In short, extending Retopomeister beyond humanoids requires little more than the right example meshes.</p>
<p><video autoplay loop muted playsinline width="100%" preload="metadata"><source src="https://datameister.ai/blog/ai-automated-retopology/cat-retopo-demo_98d76a49bc10e9af3f9af87251d79319.mp4" type="video/mp4"></video></p>
<p><em>Demo of retopomeister also working on cat meshes by generating anchors and fitting (in asymmetric mode)</em></p>
<h3>3.6. Future work</h3>
<p>There are several clear directions for pushing Retopomeister further. One exciting direction is <strong>increasing the number and precision of keypoints</strong>. While the system currently detects 12 major anchors, we envision expanding this to finer landmarks - like fingers, facial features, or subtle details such as the wings of the nose. More precise anchors mean the retopology can follow complex structures more closely, giving artists even greater control over deformation and loop placement.</p>
<p>We’re also looking at ways to make the <strong>wrapping process even faster</strong>. Today it completes in under two minutes, but with further optimizations, we could aim for near-instantaneous feedback. Artists could adjust an anchor or tweak a setting and immediately see the results, making Retopomeister feel like a truly interactive assistant.</p>
<p>Finally, we see potential for a more <strong>hands-on interface</strong>, where artists can sketch edge loops directly onto the target mesh. These loops would act as hard constraints during the fitting, combining the speed of automation with the precision of manual control. Together, these improvements could turn Retopomeister into a fully collaborative retopology tool - taking care of the repetitive work while leaving the creative choices entirely in the artist’s hands.</p>
<h2>4. Conclusion</h2>
<p>Retopology has always been that quiet but stubborn bottleneck in 3D character production. It is vital for animation and performance, yet it is slow, repetitive, and unforgiving. Retopomeister shows that AI does not need to replace artistry to make a real difference. By understanding anatomy and reusing clean source topologies, automation can take on the heavy lifting while artists stay focused on what matters most: shaping characters that move, feel, and perform.</p>
<p>As we keep refining the system, the goal is not full automation for its own sake. It is to remove the friction that blocks creative flow. Fewer hours lost to cleanup, fewer guesses in topology, and a smoother handoff from sculpt to rig. When AI handles that work, artists move faster, experiment more, and bring better characters to life.</p>
<p><strong>If you’re a studio or team with recurring retopology needs - humanoids, creatures, props, or product assets - we’d love to collaborate.</strong> We can tune Retopomeister on your specific object classes, integrate with your existing tools, and benchmark results using our RetopoCheck evaluation. <a href="https://datameister.ai/contact-us/">Reach out</a>, and let’s explore how much time your team could save when clean topology starts as a given, not a goal.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Datameister at SIGGRAPH 2025: Insights and Trends</title>
      <link>https://datameister.ai/blog/datameister-at-siggraph-2025-insights-and-trends/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/datameister-at-siggraph-2025-insights-and-trends/</guid>
      <pubDate>Mon, 22 Sep 2025 18:35:28 GMT</pubDate>
      <dc:creator>Jarne Van den Herrewegen</dc:creator>
      <category>Events</category>
      <description>SIGGRAPH 2025 recap: practical AI in computer graphics, covering 3D generation, simulation, pipeline fit and takeaways studios can apply now.</description>
      <content:encoded><![CDATA[<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-at-siggraph-2025-insights-and-trends/siggraph-foto_b89589f043805921531473c4c3277a93.jpeg" alt="Datameister at SIGGRAPH 2025: Insights and Trends"></figure>
<p>At SIGGRAPH 2025, AI continued to gain traction across computer graphics, with clear signs of both progress and resistance. While interest was high and more research papers than ever involved deep learning, practical adoption remains fragmented and often constrained by infrastructure and workflow realities. This post offers a grounded perspective beyond the hype, covering industry economics and AI, 3D generation, and simulation. Rather than a deep technical dive, it shares observations and takeaways from a week of demos, papers, and conversations on the show floor.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-at-siggraph-2025-insights-and-trends/siggraph-foto_b89589f043805921531473c4c3277a93_800.jpeg" alt="Datameister’s Axel (CTO) and Jarne (AI Engineer) geeked out for a week in the Vancouver convention center."><figcaption><em>Datameister’s Axel (CTO) and Jarne (AI Engineer) geeked out for a week in the Vancouver convention center.</em></figcaption></figure>
<h2>Industry Pressure &amp; AI for Efficiency</h2>
<p><strong>Social media and streaming are reshaping attention and revenue in the entertainment industry.</strong> People spend more time in social media and streaming platforms instead of going to movie theaters or playing high-end games than pre-covid, clearly put by Natalya Tatarchuk (CTO Activision) during the Advances in Real-Time Rendering in Games sessions. The shift puts pressure on major film/animation studios and AAA gaming studios to do more with less while keeping quality high. AI could play a role in this evolution and has been a polarizing topic in the industry for the past years. Lay-offs in the industry have partially been attributed to (hyped?) expectations for AI to automate artists and devs away. On the SIGGRAPH floor, however, a careful yet broad interest for AI tooling existed.</p>
<p><strong>Where is AI adoption the largest?</strong> Most popular applications lie in the ideation and discovery processes early on, where generative models bring small ideas to life quickly. Midjourney and ComfyUI were definitely mentioned the most and seemed widely adopted, besides the obvious ChatGPT and Gemini as general asistants. For later stages in large projects, where the playbook is fixed, generative AI was deemed too low quality for making final renders. 3D related AI tools are mostly in an experimental phase, many studios are looking into new tools, but adoptions seems low.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-at-siggraph-2025-insights-and-trends/midjourneycomfyui_7c50842c3ec8cbaeb416349e25c18c4c_800.webp" alt="Datameister at SIGGRAPH 2025: Insights and Trends"></figure>
<p><strong>What is coming in the next two years?</strong> In the paper section, the amount of research on AI for computer graphics was astounding, breakthrough applications are expected to arrive in the coming years. <strong>Animation generation</strong> was covered widely, for example <a href="https://anytop2025.github.io/Anytop-page/">AnyTop</a>, allowing to generate animations and skipping mocap entirely. <strong>3D generation</strong> quality is improving rapidly, altough not clearly not production ready for everyone. Nvidia is pushing heavily for <strong>neural shading and physics simulation</strong> for robotics and extreme realism in digital environments. Further in this post, we cover 3D Generative AI and Neural Shading &amp; Simulation more broadly.</p>
<p><video autoplay loop muted playsinline width="100%" preload="metadata"><source src="https://datameister.ai/blog/datameister-at-siggraph-2025-insights-and-trends/ezgif-73f72d0ce4154a_bd591ce229e797447dece0245d0bc95b.mp4" type="video/mp4"></video></p>
<p><em>AnyTop generated animations.</em></p>
<p><strong>What are practical challenges for the new AI tools? On-premise solutions and walled gardens</strong> are often necessary to protect intellectual property. For many large studios, especially those outside North America and Europe, cloud-only platforms raise serious concerns around privacy, compliance, and long-term access. Yet most of the new tools on the market today are web-based or cloud-native, making them hard to adopt. <strong>Integration is another pain point: many tools are designed as one-size-fits-all platforms</strong> rather than plug-ins or extensions to existing software. Midjourney and ComfyUI are clear examples. Leaving your creative software environment breaks flow, adds friction, and makes it harder to stay focused. While tech artists are quick to explore these tools, many other creatives remain cynical and are much slower to adapt generative tools-especially because AI models are trained on their data and threaten their income. Automating the boring part of creative workflows, e.g. retopo, is better supported by artists.</p>
<h2>3D Generative AI</h2>
<p>A hot space at SIGGRAPH this year was 3D generative AI. A wave of new startups like Deemos, Chat3D, Tripo, and Meshy are driving innovation in this area. These platforms make it faster than ever to go from an idea to a rough 3D model, however they’re missing quality and important features for AAA studios.</p>
<p><strong>Geometric quality is getting really good</strong>, and results are often visually convincing at first glance. However, under the hood, most generated assets fall short of production standards. Particularly <strong>textures are often low-resolution</strong> or poorly aligned, <strong>topology</strong> is usually too chaotic to animate or modify, and <strong>UV unwrapping</strong> is either missing or completely unusable. <strong>Getting high quality PBR materials is a challenge</strong> clearly. These are still critical bottlenecks if the goal is integration into a film, game, or simulation pipeline.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-at-siggraph-2025-insights-and-trends/dense-triangles-topo-1_e653dd4331fa0575fe62e0efedab633a_800.webp" alt="High-detail geometry comes with high density topology (Rodin 1.5 - Deemos)"><figcaption><em>High-detail geometry comes with high density topology (Rodin 1.5 - Deemos)</em></figcaption></figure>
<p><strong>Control</strong> is another big challenge. Most current tools offer minimal ways to guide or constrain the output beyond a <strong>text prompt or references images</strong>. Iterating on a result to refine a shape, preserving certain features, or regenerating only part of a mesh is sometimes supported but not in a practical way. At <strong>DataMeister</strong>, we’ve built a more structured approach in <strong>Trellis</strong>, see our <a href="https://www.youtube.com/watch?v=zoSI979fcjw&ab_channel=CDFAM">presentation</a> and <a href="https://datameister.ai/blog/constraint-aware-3d-generative-design-editable-iterable-manufacturable">whitepaper</a>, where users can iteratively guide generation using 3D constraints and highly precise 2D edits making the process more interactive and reliable.</p>
<p>On the <strong>infrastructure</strong> side, most 3D generative tools run fully in the <strong>cloud</strong> and are often built by teams <strong>outside of North America or the EU</strong>. That can be problematic for studios with strict data policies, especially when dealing with confidential assets or client data. Additionally, few of these tools <strong>integrate well into existing workflows</strong>. Even something as simple as naming conventions, material assignments, or unit scales is often missing-forcing teams to manually adapt outputs before use. These small gaps add up quickly and <strong>break creative flow</strong>. They’re part of the reason why many artists still prefer traditional modeling over trying to wrangle with generative results.</p>
<h2>Neural Shading &amp; Simulation</h2>
<p>NVIDIA demonstrated an Unreal Engine integration for <strong>neural shading</strong>, where neural networks optimize rendering by compressing textures first and approximating materials during real-time rendering. This triggered a feeling of inception to us, as neural networks approximate functions and a rendering pipeline approximates real-world physics. The benefits include <strong>reduced memory usage (3x - 10x) and higher fps (2x - 5x) at minimal visual loss</strong>, but the tech is still early. No major productions are using it yet. NVIDIA offered multiple courses at SIGGRAPH and theoretical sessions to introduce their frameworks, such as <a href="https://github.com/shader-slang/slang">Slang</a>, to support this new approach.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-at-siggraph-2025-insights-and-trends/neural-shading_7ca6167822bb6ac869aaca4945239655_800.jpg" alt="Neural BRDF from Zeltner et al. (NVIDIA)"><figcaption><em>Neural BRDF from <a href="https://research.nvidia.com/labs/rtr/neural_appearance_models/">Zeltner et al. (NVIDIA)</a></em></figcaption></figure>
<p><strong>Robotics and simulation teams are increasingly adopting real-time graphics tooling originally built for film and game production</strong>. Features like photorealistic sensor emulation, contact dynamics, and rigid body simulation are now being combined with rendering pipelines that support ray tracing, mesh-based collision, and procedural scene composition. At SIGGRAPH, several NVIDIA demos showed how procedural scene generation paired with high-fidelity physics can produce scalable virtual environments for robotics simulation such as the Disney droids. In parallel, AI models are being used to estimate physically based material properties (PBR) from real-world sensor data, like video footage captured by a self-driving car, allowing engineers to recreate complex scenes with realistic lighting and surface behavior. These materials can then be selectively altered-such as changing only the roughness of a road surface or the reflectivity of a wall-while keeping the geometry constant. This enables precise experimentation with visual variation, which is critical for stress-testing vision and control systems. As a result, the boundaries between creative rendering workflows and robotics simulation stacks are narrowing, resulting from shared needs for realism, control, and reproducibility.</p>
<h2>Conclusion</h2>
<p>AI is more present than ever on SIGGRAPH. As a sign on the wall, the volume of research papers involving neural networks indicates that this trend will definitely continue in the coming years. This industry is driven by technological advancements, SIGGRAPH was born for this exact reason, and AI is clearly becoming the next shift. As Datameister, we had a great time soaking up the energy, testing new tools, and discussing both the promises and limitations of current AI approaches. Many of the issues raised around integration, creative control, and production quality are challenges we actively help customers with.</p>
<p>In case you are looking for a partner in this space, <a href="https://datameister.ai/contact-us/">reach out</a>. We offer end-to-end support-from AI development and infrastructure to hosting and seamless integration with your existing creative pipelines.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Constraint-Aware 3D Generative Design: Editable, Iterable, Manufacturable</title>
      <link>https://datameister.ai/blog/constraint-aware-3d-generative-design-editable-iterable-manufacturable/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/constraint-aware-3d-generative-design-editable-iterable-manufacturable/</guid>
      <pubDate>Sun, 07 Sep 2025 11:14:32 GMT</pubDate>
      <dc:creator>Ruben Verhack</dc:creator>
      <category>Lab</category>
      <category>3D Generation &amp; Reconstruction</category>
      <description>Constraint-aware 3D generation for industrial design: explore variations while hard points stay fixed, via masked generation and differentiable rendering.</description>
      <content:encoded><![CDATA[<p><video autoplay loop muted playsinline width="100%" preload="metadata"><source src="https://datameister.ai/blog/constraint-aware-3d-generative-design-editable-iterable-manufacturable/dm-blogpost-banana-landing_3619aa0182944984528618ca8bd374e9.mp4" type="video/mp4"></video></p>
<blockquote>
<h4>TL;DR</h4>
<p>Most 3D generative AI creates “fiction before physics”-beautiful shapes that break once real-world constraints are applied. Our approach flips that script. By defining which geometry is fixed and which can evolve, then iterating and editing directly from 2D views, we unlock a workflow where style and physics develop together.</p>
<p><strong>Result:</strong> concepts that respect constraints from the start, faster iteration, and precise local control without endless retries.</p>
</blockquote>
<p>In a <a href="https://datameister.ai/blog/constrained-driven-3d-generative-ai-computational-design-symposium">recent post</a>, our CEO Ruben shared <em>why</em> constraint-driven AI matters and how it shifts the role of designers and engineers into true co-creation. That piece, along with my <a href="https://cdfam.com/datameister-constrained-creativity-in-ai-accelerated-automotive-design/?utm_source=chatgpt.com">CDFAM interview</a>, explored the pain points that inspired our work: non-negotiable geometry in automotive, architectural design lock-in, and the costly late-stage changes that plague hardware teams.</p>
<p>This post builds on that foundation. Instead of focusing on the “why,” here we’ll go deeper into the <strong>“how”</strong>: the workflow that makes constraint-aware 3D generative design practical, and what new possibilities it unlocks for designers and engineers.</p>
<p><em>Watch the full length talk on AI-accelerated Automotive Design at CDFAM.</em></p>
<h2>The problem</h2>
<p>Industrial design always starts with hard points-clearances, battery packs, safety envelopes, structural elements-non-negotiable geometry that must survive every iteration. Real creativity means exploring every viable form within that rigid framework.</p>
<p>Yet most generative-AI tools treat these guardrails as afterthoughts. Two issues show up again and again:</p>
<p>Fiction before physics - Models produce striking shapes that collapse when confronted with packaging, safety, or structural data.</p>
<p>Ambiguity in 2D guidance - When designers provide input through images, sketches, or edited renders, models often confuse whether the edit should update texture (paint, logos, finishes) or geometry (indents, curves, structural features). A highlight on a car body might be misread as a paint effect, when in reality it should change the shape.</p>
<h2>Our approach</h2>
<p>Instead of patching those gaps after the fact, we bake constraints directly into the generative process. Using Trellis-based 3D diffusion, masked generation, and differentiable rendering, we let you sweep through shapes, textures, and styles while critical geometry stays frozen. Crucially, our pipeline can <strong>explicitly separate texture edits from geometry edits</strong>-or let the AI resolve the distinction automatically based on multiple edited views.</p>
<p><video autoplay loop muted playsinline width="100%" preload="metadata"><source src="https://datameister.ai/blog/constraint-aware-3d-generative-design-editable-iterable-manufacturable/dm-blogpost-banana_e4f6ba8da449c18a7808ede32f0cbf74.mp4" type="video/mp4"></video></p>
<p><em>Example of texture-only update</em></p>
<p>From small-scale experiments-like a “bananacopter” wrapped around fixed screws and rotor blades that we’ll show later-to full automotive envelopes locked to battery packs and crash structures, the same workflow applies: critical geometry stays untouched while everything else evolves. Designers can add details with a few brushstrokes, lock down successful iterations, and push new variations-all without breaking the engineering rules in the background.</p>
<p><video autoplay loop muted playsinline width="100%" preload="metadata"><source src="https://datameister.ai/blog/constraint-aware-3d-generative-design-editable-iterable-manufacturable/dm-blogpost-banana-landing_3619aa0182944984528618ca8bd374e9.mp4" type="video/mp4"></video></p>
<p><em>Example of geometry update</em></p>
<h2>What this unlocks</h2>
<p><strong>Constraint-aware generation</strong> - Freeze non-negotiable geometry while exploring new shapes, textures, and styles around it.</p>
<p><strong>Targeted iteration</strong> - Regenerate only in editable regions instead of starting over, keeping what already works.</p>
<p><strong>2D-to-3D editing</strong> - Apply brushstrokes, sketches, or image edits to renders and propagate them back into the 3D model.</p>
<p><strong>Texture vs. geometry control</strong> - Decide explicitly whether an edit changes surface appearance or underlying shape-or let the AI resolve it from multiple views.</p>
<p><strong>Physics and style in sync</strong> - Bridge the “fiction-before-physics” gap so expressive designs remain viable against engineering constraints.</p>
<p>These capabilities matter because they address the biggest shortcomings in today’s generative 3D AI. To see why our approach is different, it helps to look at where the field stands today-and why standard models still fall short in real design workflows.</p>
<h2>Generative 3D AI today</h2>
<p>Over the past year, generative models for 3D objects have taken a big leap forward. The quality of single generations is now impressive-but for real design work, “one decent output” isn’t enough. In many cases, creatives spend as much time cleaning up assets as they would starting from scratch.</p>
<p>These limitations come from the models themselves. Because they are trained on large but biased datasets, they tend to favor certain shapes and styles. And while controllability has improved-mainly through image and text conditioning-these methods still leave designers with limited precision. They help nudge a model, but they don’t guarantee geometry that survives real-world constraints.</p>
<h3>The baseline: image conditioning</h3>
<p>Most 3D generative models, including Trellis, accept images as conditioning. In principle, you can draw edits on a render, feed that back into the model, and expect the change to appear in 3D. In practice, it rarely works reliably: surface details get lost, and it’s ambiguous whether an edit is meant to change <strong>texture</strong> (paint, logos) or <strong>geometry</strong> (indent, curve).</p>
<blockquote>
<p>Image conditioning nudges a model, but it doesn’t guarantee precision. For real design work, that’s not control-it’s guesswork.</p>
</blockquote>
<p>For example, if we sketch the letters <em>DM</em> on a render of a banana and use that as input, the resulting 3D generation often distorts or ignores the edit.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/constraint-aware-3d-generative-design-editable-iterable-manufacturable/conditioning-dm-image-2_97179a9dbbe6a7e0307a9d575fd04405_800.webp" alt="Image conditioning alone is unreliable: edits like “DM” drawn on a render (left) are often misinterpreted or lost in the resulting 3D output (right)."><figcaption><em>Image conditioning alone is unreliable: edits like “DM” drawn on a render (left) are often misinterpreted or lost in the resulting 3D output (right).</em></figcaption></figure>
<p>This lack of precision is one reason creatives hesitate to adopt 3D generative tools. It sets the stage for more robust methods-ones that don’t just nudge a model, but directly enforce constraints and interpret edits correctly.</p>
<h2>Techniques that close the gap</h2>
<p>The techniques we showcase here aim to bridge that gap: moving from <em>nice-to-look-at outputs</em> toward <em>usable, constraint-respecting assets</em>. In our demo, we show how to get precisely edited 3D assets that keep fixed geometry intact. Two key methods make this possible:</p>
<p><strong>Masked generation</strong> - borrowed from image inpainting/outpainting, this lets us freeze non-editable regions and regenerate only where new geometry is allowed.</p>
<p><strong>Differentiable rendering</strong> - a more advanced method where edits are made in 2D (on renders of the asset), then backpropagated through the renderer into the 3D latent space, updating either textures or geometry as intended.</p>
<p>We apply these ideas on top of the Trellis 3D generative model (see our <a href="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction">Trellis tutorial blog post</a>), though they can be used with other architectures as well. Trellis is especially useful because its structured latent space can decode into multiple modalities, including Gaussian splats and meshes-making it practical both for fast exploration and for downstream CAD or simulation. (It’s also widely adopted, with over 10K stars on GitHub.)</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/constraint-aware-3d-generative-design-editable-iterable-manufacturable/screenshot-2025-07-30-at-153548_0c7c6b5bf6036a3356daf45f6cca58bf_800.webp" alt="Trellis 3D generative model: structured latent space with decoders for Gaussian splats and meshes."><figcaption><em>Trellis 3D generative model: structured latent space with decoders for Gaussian splats and meshes.</em></figcaption></figure>
<h3>The bananacopter example</h3>
<p>To illustrate, our demo walks through designing a toy helicopter around a fixed block with a screw and rotor blades. Using a 3D generative model with masked generation and differentiable rendering, we grow a whimsical <em>“bananacopter”</em> that respects the fixed geometry while still exploring creative variations. This simple example shows how the same workflow can scale to far more complex, constraint-heavy domains like automotive packaging.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/constraint-aware-3d-generative-design-editable-iterable-manufacturable/image_b2af719fe115cc57c55bb278735ff544_800.webp" alt="Constraint-aware latent representation: the model combines designer intent (image) with fixed geometry (constraints) into a structured latent, where each voxel encodes both geometry and texture"><figcaption><em>Constraint-aware latent representation: the model combines designer intent (image) with fixed geometry (constraints) into a structured latent, where each voxel encodes both geometry and texture</em></figcaption></figure>
<h3>Masked Generation</h3>
<p>Masked generation is similar to image inpainting or outpainting. During denoising in the diffusion process, specified regions remain fixed. The idea was mentioned in the original Trellis paper under the name “<a href="https://openaccess.thecvf.com/content/CVPR2022/papers/Lugmayr_RePaint_Inpainting_Using_Denoising_Diffusion_Probabilistic_Models_CVPR_2022_paper.pdf">Repaint</a>,” although the official code was not released. There’s an unofficial implementation, but we found that a simpler approach works surprisingly well: initialize the generative voxel space with the constraints and regenerate only in masked regions outside of them. It’s straightforward to implement and pairs nicely with Trellis’ image conditioning.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/constraint-aware-3d-generative-design-editable-iterable-manufacturable/cdfam-masked-generation-constraint-1_ae81ea78d548cc716cc4ac90eb1958c3_800.webp" alt="Constraints define which geometry must remain fixed (left), while editable regions are free to regenerate (right)."><figcaption><em>Constraints define which geometry must remain fixed (left), while editable regions are free to regenerate (right).</em></figcaption></figure>
<p>By defining a mask to indicate which parts of the geometry the model is allowed to regenerate, and supplying guiding images, you can control both the 3D shape and texture. This gives designers creative flexibility while ensuring engineering-critical geometry stays untouched.</p>
<p>The example below shows constrained generation for the <em>bananacopter</em>: a toy helicopter wrapped around fixed screws and rotor blades. Only the free region is regenerated, guided by an image prompt, while the blades and gear block remain frozen.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/constraint-aware-3d-generative-design-editable-iterable-manufacturable/masked-generation_b3d44aa5de8e7376491dd54abed4a86d_800.webp" alt="Constraint-aware generation of the bananacopter: the fixed rotor + screw block remain untouched, while the editable region adapts freely."><figcaption><em>Constraint-aware generation of the bananacopter: the fixed rotor + screw block remain untouched, while the editable region adapts freely.</em></figcaption></figure>
<h2>Precise texture editing with differentiable rendering</h2>
<p>To overcome the limits of image conditioning, we developed algorithms that use differentiable rendering to feed edits directly back into the model. Instead of hoping the network interprets a sketch correctly, this approach maintains a computational link between the rendered pixels and the structured latent representation of Trellis.</p>
<p>The process works like this: starting from a latent (from a prompt or a masked generation), we decode it into Gaussian splats and render multiple viewpoints with a differentiable renderer. When a designer edits those renders-for example, painting the letters <em>DM</em> on the banana-those pixel edits are <strong>backpropagated</strong> into the latent. Iteratively, the latent updates until its decoded output matches the edited views.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/constraint-aware-3d-generative-design-editable-iterable-manufacturable/differentiable-dm-image_dc5e2e25a89a4dc6fe9f822739195dea_800.webp" alt="Differentiable rendering: input renders with manual edits (left) are backpropagated into the latent, producing consistent texture edits across new 3D views (right)."><figcaption><em>Differentiable rendering: input renders with manual edits (left) are backpropagated into the latent, producing consistent texture edits across new 3D views (right).</em></figcaption></figure>
<p>This makes edits much more precise than image conditioning alone, because it avoids the information loss that happens when neural networks “interpret” guidance. With just 3–4 edited renders, you can enforce detailed changes that persist from any viewpoint in 3D space.</p>
<h2>Editing geometry through 2D input</h2>
<p>Differentiable rendering doesn’t just work for textures-it can also drive <strong>geometry edits</strong>. Combined with masked generation, this lets us update the underlying shape of an object using only a few edited 2D renders.</p>
<p>The process starts with masked generation: fixed geometry is preserved, while new voxels are generated in editable regions. Instead of guiding this only with images, we augment the pipeline with a differentiable voxel renderer. This ensures that edits made in 2D renders-such as an indent or curve-propagate directly into the 3D structure.</p>
<blockquote>
<p>In practice, this means designers can sketch structural changes in a couple of 2D views, and the model updates its geometry to match-without breaking constraints.</p>
</blockquote>
<figure class="post-figure"><img src="https://datameister.ai/blog/constraint-aware-3d-generative-design-editable-iterable-manufacturable/differentiable-dm-geometry_d8aac8de5ba08f31ba4ce68217064d20_800.webp" alt="Differentiable rendering for geometry: manual edits in 2D renders (left) are backpropagated into the voxel latent, producing consistent 3D geometry updates (right)."><figcaption><em>Differentiable rendering for geometry: manual edits in 2D renders (left) are backpropagated into the voxel latent, producing consistent 3D geometry updates (right).</em></figcaption></figure>
<p>Differentiable rendering for geometry: manual edits in 2D renders (left) are backpropagated into the voxel latent, producing consistent 3D geometry updates (right).</p>
<h2>Closing thoughts</h2>
<p>Constraint-aware generation doesn’t just make 3D assets look good-it makes them usable. By freezing critical geometry and letting everything else stay fluid, the workflow you’ve seen here short-circuits the usual back-and-forth between design and engineering. The result is faster cycles, fewer dead ends, and assets that can move directly into CAD, simulation, or tooling.</p>
<p>But the bigger shift is what this unlocks: <strong>controllability</strong>. Designers can steer generation at the right level of detail-whether that’s broad form exploration or pixel-level edits-while staying aligned with engineering constraints. And because these methods are modular, they don’t just live in demos: we can integrate them into existing graphical pipelines, connect them to product workflows, and adapt them across industries.</p>
<p>If you’re working on design tools, simulation, or automation pipelines and this resonates, we’d love to connect. <a href="https://datameister.ai/contact-us/">Reach out</a> to explore how our constraint-driven generative pipeline can streamline your projects-or spark new ones.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Datameister Turns Two 🎂</title>
      <link>https://datameister.ai/blog/datameister-two-year-anniversary/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/datameister-two-year-anniversary/</guid>
      <pubDate>Mon, 30 Jun 2025 14:29:11 GMT</pubDate>
      <dc:creator>Ruben Verhack</dc:creator>
      <category>Behind the Scenes</category>
      <description>Datameister's two-year anniversary: tour the new Ghent HQ, meet the doubled AI team, explore platform upgrades and catch the celebration recap.</description>
      <content:encoded><![CDATA[<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-two-year-anniversary/dm-group-a-11_0634fce772cf85e365be662a5e6f5011.jpg" alt="Datameister Turns Two 🎂"><figcaption><strong>On June 12th, at Datameister’s two-year anniversary, we opened the doors to our brand-new Ghent HQ. It was a moment to show how a young, ambitious team can scale fast when curiosity meets craft.</strong> From our first proof-of-concepts to production-ready computer-vision and 3D-AI projects for sports analytics, automotive design, and entertainment pioneers, year two was our biggest leap yet.</p>
<p><em>Datameister’s two-year anniversary &amp; new Ghent HQ</em></p>
<hr>
<h2>Year-2 Scorecard</h2>
<p>We’ve been moving fast, building hard, and growing strong-these are just a few of the moments that defined our year.</p>
<p><strong>Team growth:</strong> ↑ 7 to 14 brilliant minds mainly focused on in-depth AI engineering, DevOps and extra senior leadership.</p>
<p><strong>Projects:</strong> More and more visual and 3D AI projects while diversifying our client base.</p>
<p><strong>Platform upgrade:</strong> Upgraded Datameister Platform with faster visual data processing and robust in-house AI capabilities.</p>
<p><strong>Conferences:</strong> Attended ECCV 2024, SuperNova, and UNWRAP (as speaker); planning to attend SIGGRAPH and speak at CDFAM in 2025.</p>
<p><strong>New office:</strong> Finally moved into a larger Ghent HQ - plenty of room for our growing team and beautifully designed by our friends <a href="https://www.instagram.com/blarinckxdennis/">Dennis</a> (from <a href="https://www.instagram.com/boldhouse__/">Boldhouse</a>) and Tim Van Rensbergen.</p>
<h2>One Year, Many New Faces: Our Team in Pictures</h2>
<p>There was a time when we could write a blog post for every new hire-but with 7 amazing additions this year, that’s become a bit harder! A warm welcome to Lily, Niels, Jirne, Pierre, Ekaterina, Thijs, and Bernard (who’s missing in the photo).</p>
<blockquote>
<p><em>What a difference twelve months make-here’s the bigger-than-ever Datameister crew! <a href="https://datameister.ai/blog/celebrating-our-first-year">Check out our team a year ago!</a></em></p>
</blockquote>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-two-year-anniversary/dm-group-a-11_edd58c9b85100498b9ac89d30a994bde_1000.jpg" alt="Datameister Turns Two 🎂"></figure>
<p><em>Datameister two-year anniversary team photo outside new Ghent office, photos by Arthur Pieters</em></p>
<h2>Thank You for Being Part of the Journey</h2>
<p>None of this happens in isolation. To our clients who trust us with their toughest data problems, to our academic partners who stretch our thinking, and to the tech community that cheers us on-thank you. We wrapped up the year by hosting a well-deserved BBQ at our new office, bringing together clients, partners, suppliers, friends, and the team.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-two-year-anniversary/dm-event-a-1_64fc723aa866934394595425e5976761_800.jpg" alt="Datameister Turns Two 🎂"></figure>
<p><em><strong>Datameister two-year anniversary celebration, photos by Arthur Pieters</strong></em></p>
<p>A special thanks to <strong>Tim, our can-do-everything handyman</strong>, whose paintbrush, design sense and fix-it wizardry turned a bare space into a fully equipped HQ built for our next phase of growth.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-two-year-anniversary/untitled-design_9e038ccc3b9edcf14a5521e40b2da8e8_800.jpg" alt="Tim&#39;s new office bench design"></figure>
<p><em>Custom made bench by Tim Van Rensbergen.</em></p>
<h2>What’s Next? 🚀</h2>
<p>Year three is already in motion, with plenty ahead:</p>
<ul>
<li>Further maturing Datameister and crystalizing our offering (stay tuned for our new leadership introductions)</li>
<li>Accelerating development of the Datameister Platform</li>
<li>More in-house development of AI capabilities</li>
<li>More technical demos and blog posts</li>
<li>Fresh roles on the <a href="https://datameister.ai/jobs/">careers page</a>.</li>
</ul>
<h2>Follow the Journey</h2>
<p><strong>Follow us on <a href="https://www.linkedin.com/company/datameister/?">LinkedIn</a> &amp; <a href="https://www.instagram.com/datameister.ai">Instagram</a> to see what year 3 brings.</strong></figcaption></figure>
]]></content:encoded>
    </item>
    <item>
      <title>Constraint-driven 3D Generative AI - Computational Design Symposium</title>
      <link>https://datameister.ai/blog/constrained-driven-3d-generative-ai-computational-design-symposium/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/constrained-driven-3d-generative-ai-computational-design-symposium/</guid>
      <pubDate>Wed, 11 Jun 2025 14:07:31 GMT</pubDate>
      <dc:creator>Jarne Van den Herrewegen</dc:creator>
      <category>Events</category>
      <description>A CDFAM Amsterdam preview: how Datameister embeds real engineering constraints into generative design to cut design lock-in and speed iteration.</description>
      <content:encoded><![CDATA[<figure class="post-figure"><img src="https://datameister.ai/blog/constrained-driven-3d-generative-ai-computational-design-symposium/cdfam-ams-speakers-25_c6330aa994144b82306c7534df20a41b.jpg" alt="Constraint-driven 3D Generative AI - Computational Design Symposium"></figure>
<p>I&#39;m excited to be speaking at <strong><a href="https://cdfam.com/amsterdam-2025/">CDFAM Amsterdam</a></strong>, happening <strong>July 9–10, 2025</strong>, where I’ll share how we at <strong>Datameister</strong> are applying <em>constraint-aware generative AI</em> to real-world design challenges-starting in automotive, and now branching into architecture, consumer electronics, and beyond.</p>
<p>Generative design is often talked about as a creative revolution-but in practice, most tools either ignore the constraints that engineers live with, or only validate feasibility after the fact. At Datameister, we’ve taken a different route. As I explained in my recent <strong><a href="https://cdfam.com/datameister-constrained-creativity-in-ai-accelerated-automotive-design/">CDFAM interview</a></strong>:</p>
<blockquote>
<p>“Instead of generating something and checking feasibility after the fact, the designer is co-creating with a system that already understands the constraints-structural, ergonomic, regulatory, whatever they may be.” - Ruben Verhack, CEO Datameister</p>
</blockquote>
<figure class="post-figure"><img src="https://datameister.ai/blog/constrained-driven-3d-generative-ai-computational-design-symposium/cdfam-ams-speakers-25_c6330aa994144b82306c7534df20a41b_800.jpg" alt="Constraint-driven 3D Generative AI - Computational Design Symposium"></figure>
<p>Rather than pushing a generic model onto every workflow, we develop <strong>application-specific tools</strong> that embed domain constraints <em>up front</em>-enabling designers and engineers to collaborate with AI systems that understand the rules of the game before play even begins.</p>
<p>This is especially important in fields like <strong>automotive</strong>, where every bold design gesture must fit within tightly coupled systems-crash structure, visibility requirements, aerodynamics, and platform geometry. But it’s not just about cars.</p>
<p>In <strong>architecture</strong>, for example, early massing decisions often get locked in before regulations or budgets are fully known-leading to massive rework downstream. In <strong>consumer electronics</strong>, once layout and thermal constraints are defined, altering enclosures becomes prohibitively expensive late in the process. This kind of <strong>design lock-in</strong> is a structural issue across industries, and our tools aim to break that cycle by <em>decoupling dependencies</em> and enabling earlier, faster, lower-risk iteration.</p>
<p>By integrating real constraints directly into the design generation process, we allow teams to explore more-and backtrack less.</p>
<p>The real shift, though, is in the role of AI: not as a black box, but as a <strong>co-creator</strong>. One that gives designers immediate, constraint-aware feedback and frees engineers to become enablers, not gatekeepers. As I describe in the interview, this turns design into a much more fluid, collaborative, and expressive process.</p>
<p><strong>UPDATE (Aug 14th, 2025): Video is online!</strong></p>
<p><em><strong>Watch the full length talk recorded at CDFAM.</strong></em></p>
<p><strong><a href="https://cdfam.com/datameister-constrained-creativity-in-ai-accelerated-automotive-design/">Read the full interview here</a></strong> to dive deeper into our approach, or catch my talk at CDFAM to see how this works in practice.</p>
<p>And if you&#39;re working with simulation, optimization, or engineering automation-especially in high-constraint environments-I’d love to connect in Amsterdam.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/constrained-driven-3d-generative-ai-computational-design-symposium/unnamed_ba635a2473978ff813d35902173a439a_800.webp" alt="Constraint-driven 3D Generative AI - Computational Design Symposium"></figure>
]]></content:encoded>
    </item>
    <item>
      <title>Datameister Platform: Accelerating AI Deployment for Visual Data</title>
      <link>https://datameister.ai/blog/datameister-platform-accelerating-ai-deployment-for-visual-data/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/datameister-platform-accelerating-ai-deployment-for-visual-data/</guid>
      <pubDate>Wed, 19 Feb 2025 08:23:58 GMT</pubDate>
      <dc:creator>Ruben Verhack</dc:creator>
      <category>Lab</category>
      <category>Models &amp; Infrastructure</category>
      <description>How the Datameister Platform accelerates MLOps for visual AI: fast deployment, debugging and cost-efficient GPU scaling for image, video and 3D.</description>
      <content:encoded><![CDATA[<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-platform-accelerating-ai-deployment-for-visual-data/the-datameister-mlops-platform_3c6483da8f665e987cb338127c19d812.jpg" alt="Datameister Platform: Accelerating AI Deployment for Visual Data"></figure>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-platform-accelerating-ai-deployment-for-visual-data/the-datameister-mlops-platform_410d3cfab306db2cfec1b44f5accdcab_800.jpg" alt="Datameister Platform: Accelerating AI Deployment for Visual Data"></figure>
<blockquote>
<h3>TL;DR</h3>
<p>Most MLOps platforms struggle to handle the challenges of visual AI, such as large-scale image, video, and 3D data processing. The Datameister Platform solves this by combining AI development and operations into one seamless, GPU-optimized environment.</p>
<p><strong>Result:</strong> faster model deployment, easier iteration, and lower infrastructure costs. Clients get transparent pricing, real-time monitoring, and scalable performance without the need for in-house DevOps. It’s a simple, secure, and future-ready way to build, deploy, and manage visual AI solutions at production scale.</p>
</blockquote>
<h2>1. Introduction</h2>
<p>At Datameister, we don’t just develop <strong>custom AI algorithms</strong> for visual data-we also offer a fully managed <strong>MLOps</strong> platform that handles deployment, monitoring, and maintenance. Our goal is simple yet powerful: <strong>dramatically reduce</strong> the time it takes to bring complex AI solutions to market, while keeping costs manageable and performance high.</p>
<p>Why does this matter? Because working with large-scale <strong>images</strong>, <strong>videos</strong>, and <strong>3D objects</strong> demands more than a typical DevOps pipeline. <strong>GPU orchestration</strong>, specialized job scheduling, and real-time tracking are all crucial. By combining AI development with a dedicated <strong>MLOps</strong> platform, we ensure you can focus on <strong>what</strong> the algorithm does, not <strong>how</strong> to keep it running.</p>
<h2>2. Why We Built the Datameister Platform</h2>
<p>Our experience as an <strong>AI Research &amp; Deployment Lab</strong> made one thing clear: quickly iterating on AI models and getting them production-ready requires much more than isolated data science and DevOps teams. Here’s how our platform addresses this:</p>
<p><strong>Speed and Tight Integration</strong><br>We unify AI development and infrastructure so new models can be deployed or updated fast. When something goes wrong, our engineers can <strong>debug in hours</strong>, not days, because they have full visibility into the logs, inputs, and outputs-without lengthy handovers.</p>
<p><strong>MLOps for Visual Workloads</strong><br>Rather than using generic cloud setups, we designed our platform for <strong>GPU-intensive</strong> tasks, such as image generation, video analysis, and 3D object processing. Our Kubernetes cluster and container minimalization strategies help keep inference times short and <strong>resource usage</strong> efficient.</p>
<p><strong>Scalability With Flexibility</strong><br>Whether you’re an SME taking first steps in AI or a startup racing to market, our platform adapts. You can start small, then seamlessly scale up to handle heavier loads or more advanced features-without rebuilding everything from scratch.</p>
<p><strong>Maintainable, Agile Architecture</strong><br>We shield you from complex DevOps chores: container orchestration, resource allocation, and performance tuning are handled behind the scenes. That enables us to rapidly <strong>iterate on algorithms</strong>, knowing that the underlying platform is stable and well-monitored.</p>
<h2>3. Key Benefits: From Cost Efficiency to SLAs</h2>
<h3>3.1. Adaptive Scheduling with Multi-Tenant Efficiency</h3>
<p>A major advantage of our platform is its <strong>multi-tenant</strong> design, which allows us to <strong>share baseline capacity</strong> across clients and reduce the constant spinning up and tearing down of machines when loads fluctuate. We spread jobs across <strong>EU-based data centers</strong> and major cloud vendors, automatically opting for cost-effective resources first (like spot instances) and shifting to on-demand if needed to maintain uptime.</p>
<p>For high-priority workloads, we offer a <strong>priority queue</strong> that can reserve dedicated or on-demand capacity to meet tight turnaround requirements. Meanwhile, our ongoing work in <strong>container minimalization</strong>, <strong>efficient scheduling</strong>, and <strong>GPU optimizations</strong> helps drive down startup times and overall latency-putting near real-time performance <strong>within reach</strong> for many visual AI use cases. By dynamically balancing workloads in a multi-tenant environment, we not only optimize resource usage but also deliver <strong>lower latencies</strong> and <strong>better cost efficiency</strong> than a one-size-fits-all cloud setup.</p>
<h3>3.2. Cost-Efficient Scaling and Transparent Pricing</h3>
<p>Our pricing model aims to be <strong>straightforward, transparant</strong> and <strong>predictable</strong>, eliminating the hidden costs and inefficiencies that often come with managing AI infrastructure in-house.</p>
<p><strong>Monthly Platform License</strong>: A fixed fee that covers platform maintenance, updates, and baseline support.</p>
<p><strong>Credit-based Compute Cost</strong>: You’re billed for actual usage depending on job type (per GPU-hour or per job).</p>
<p><strong>Flexible SLAs</strong>: A <strong>basic SLA</strong> covers core business hours, while higher tiers (with shorter response times or 24/7 coverage) come at an additional cost.</p>
<p>Beyond cost transparency, our platform <strong>removes the need for an in-house DevOps team</strong>, saving on hiring, training, and retention costs. With <strong>shared infrastructure and dynamic scheduling</strong>, clients benefit from <strong>higher efficiency and continuity</strong>-ensuring AI workloads run smoothly without the overhead of managing infrastructure, monitoring, and troubleshooting internally. <strong>Every optimization we make applies across all clients, meaning your AI runs faster and more cost-effectively over time.</strong></p>
<h3>3.3. Streamlined Monitoring and Debugging</h3>
<p>Our <strong>real-time monitoring</strong> system allows us to <strong>detect, diagnose, and resolve issues instantly</strong>, eliminating delays from log retrieval or environment setup. With <strong>direct access to execution traces, inputs, and outputs</strong>, we quickly pinpoint the root cause of errors or slowdowns, ensuring minimal disruption.</p>
<p>This <strong>tight integration of MLOps and AI development</strong> not only accelerates debugging but also drives continuous optimization-adapting workloads, refining resource allocation, and improving model efficiency based on real-world performance. The result: <strong>faster iteration, lower overhead, and AI models that get better with every deployment.</strong></p>
<h3>3.4. Security and Compliance Mindset</h3>
<p>Our <strong>multi-tenant architecture</strong> enhances security by <strong>isolating workloads</strong> while allowing us to apply <strong>continuous monitoring</strong> across multiple AI deployments. This means <strong>early detection of anomalies</strong>, shared security improvements, and efficient resource management-all without compromising data separation.</p>
<p>As an <strong>EU-based company</strong>, we ensure <strong>GDPR compliance</strong> and provide <strong>data processor agreements</strong> for clients handling personal data. Our platform is designed with <strong>strict access controls</strong>, ensuring only authorized users can modify or interact with deployed workloads.</p>
<p>While we follow many <strong>ISO27001 best practices</strong>, we prioritize <strong>practical security measures</strong> that keep AI workloads <strong>safe, scalable, and efficiently managed</strong>. We are aiming for ISO27001 certification by the mid-2026.</p>
<h3>3.5. Future-Proof Flexibility</h3>
<p>We won’t lock your business into our platform. If managing AI infrastructure in-house becomes viable, our <strong>containerized deployment</strong> allows for a structured transition to your own cloud or on-prem setup.</p>
<p>However, self-hosting introduces <strong>higher overhead</strong>, requiring in-house expertise for <strong>infrastructure, monitoring, and cost management</strong>. The <strong>tight AI-DevOps integration</strong> that enables <strong>fast debugging and continuous optimization</strong> on our platform won’t carry over, leading to longer issue resolution times. Additionally, <strong>Datameister support won’t extend</strong> to externally hosted environments.</p>
<p>While transitioning will require <strong>some effort</strong>, we assist with the <strong>offboarding process</strong>, ensuring your workloads can be migrated with minimal disruption. For most clients, staying on the platform remains the most <strong>efficient and cost-effective</strong> choice, but when the time comes to move, we make sure you’re set up for success.</p>
<h2>4. Who Benefits the Most?</h2>
<p><strong>SMEs Venturing into AI</strong><br>Gain high-end MLOps capabilities without hiring or training a full DevOps team.</p>
<p><strong>Startups Racing to Market</strong><br>Iterate and deploy quickly, focusing resources on refining your AI rather than managing servers.</p>
<p><strong>Companies Handling Complex Visual Data</strong><br>If your solution depends on heavy image or video processing, our <strong>GPU-optimized</strong> platform helps you maintain both performance and cost control.</p>
<h2>5. Conclusion</h2>
<p>The <strong>Datameister Platform</strong> is designed to bring <strong>speed</strong>, <strong>efficiency</strong>, and <strong>simplicity</strong> to MLOps for visual data. By merging AI development expertise with a robust operational backbone, we empower you to roll out new features, debug issues swiftly, and scale to meet growing demands-all with a transparent cost structure.</p>
<p>Our approach helps you stay <strong>focused on innovation</strong> while we handle the mechanics of running your AI at scale.</p>
]]></content:encoded>
    </item>
    <item>
      <title>3D Generative AI: Image-based 3D reconstruction</title>
      <link>https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/</guid>
      <pubDate>Mon, 27 Jan 2025 09:09:47 GMT</pubDate>
      <dc:creator>Jarne Van den Herrewegen</dc:creator>
      <category>Lab</category>
      <category>3D Generation &amp; Reconstruction</category>
      <description>How image-based 3D reconstruction evolved from NeRFs to Trellis, compared against Rodin, Tripo, SPAR3D and Hunyuan3D-2.</description>
      <content:encoded><![CDATA[<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/ln-profile-pictures_049b19fe4b56bb19e3d748d88cd45c5c.jpeg" alt="3D Generative AI: Image-based 3D reconstruction"></figure>
<p>In 2024, there was a Cambrian explosion of academic work on 3D generation and several commercial tools made their appearance. Last month in particular, there was the exciting release of <a href="https://trellis3d.github.io/">Trellis</a> by Microsoft, taking a leap forward in the open source/science community. Its performance is great, but of equal importance is the fact that it was largely open sourced and people are already <a href="https://github.com/if-ai/ComfyUI-IF_Trellis">building</a> with it.</p>
<p>The goal of this post is twofold:</p>
<p>This post will be a tutorial for builders and other interested minds, offering a concise overview of the historical developments that led to Trellis and a detailed look at how it works-explaining why its pipeline is designed the way it is.</p>
<p>We will compare Trellis to other state-of-the-art commercial tools -such as <a href="https://hyper3d.ai/rodin">Rodin</a> by Hyper3D, <a href="https://www.tripo3d.ai/">Tripo</a> by TripoAI, <a href="https://spar3d.github.io/">SPAR3D</a> by StabilityAI and <a href="https://github.com/Tencent/Hunyuan3D-2">Hunyan3D-2</a> by Tencent-by examining both the <strong>theoretical differences</strong> in their pipelines and presenting <strong>visual results for a subjective eval</strong> of each tool.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/ln-profile-pictures_049b19fe4b56bb19e3d748d88cd45c5c_800.jpeg" alt="Jarne Van den Herrewegen - AI Engineer (author)"><figcaption><em>Jarne Van den Herrewegen - AI Engineer (author)</em></figcaption></figure>
<p><strong>A small word about myself first.</strong> My name is Jarne, I am a first class AI nerd and ML engineer at Datameister. I hold a soon-to-be-defended PhD in self-supervised 3D deep learning. The best thing for me is rabbit-holing in research and busting out algorithms in disruptive products. Having worked with the Datameister founders Axel and Ruben for 3 years at Oqton, I am more than happy to join them and the other talented meisters!</p>
<h2>1. From NeRF to Trellis3D: key concepts of 3D generation</h2>
<p>Given the success of image generation models, an extensive line of research on 3D reconstruction from images has formed in the past two years. The goal of this section is to introduce key concepts in 3D generative models using image generation without losing ourselves in paper-filling details. These foundations will clarify how the field evolved and set the stage for understanding Trellis and why its design choices push 3D generation further. In this section I will cover:</p>
<p><strong>NeRFs and Gaussian Splatting</strong>: the bridges between 2D and 3D</p>
<p><strong>DreamFusion:</strong> pioneering general 3D generation</p>
<p><strong>Large Reconstruction Model</strong>: making DreamFusion efficient</p>
<p><strong>InstantMesh</strong>: introducing 3D feedback</p>
<h3>1.1 Image-based 3D reconstruction</h3>
<p>We begin with NeRFs and Gaussian Splatting because they set the foundation for modern 3D generation-both methods demonstrate how limited 2D observations can be leveraged to generate new “3D” views. By understanding the strengths (and limitations) of these approaches, we can see why Trellis adopts certain strategies (like voxelization and latent-space modeling) and how it ultimately distinguishes itself from earlier techniques.</p>
<p><strong>Novel view synthesis.</strong> Key to the reconstruction from 2D to 3D, are Neural Radiance Fields (NeRF) and Gaussian Splatting (GS). Given a few images and according camera perspectives, these methods can synthesize unseen camera views with high quality. To predict views that are truthful to the 3D world, both methods build a form of geometric grounding. This geometric information will be the bridge between 2D images and 3D generation. NeRF and GS will be shortly introduced here. For more applications, definitely check out our previous <a href="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering">blog about image-based rendering with AI by Ruben</a>, who used to publish papers in the early days of this field!</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/replicate-prediction-k74khd6rdxrga0cm10s8e0mq0g_6fd6f9d55fdd1f6430b9f08472bfe78c_800.jpeg" alt="Source: Datameister blog"><figcaption><em>Source: Datameister <a href="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering">blog</a></em></figcaption></figure>
<p><strong>Neural Radiance Fields,</strong> <a href="https://www.matthewtancik.com/nerf">Mildenhall et al. ECCV 2020</a>, capture an environment into a neural network based on images and according camera positions. In essence, a NeRF is a neural network <em>f</em> fitted to infer RGB values and volume density σ (0 = empty space, 1 = solid) for point <strong>x</strong> and viewing direction <strong>d</strong>:</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/screenshot-2024-12-27-at-140651_7b098fe8e4e23fb82454b68c5f0561f4_800.webp" alt="3D Generative AI: Image-based 3D reconstruction"></figure>
<p>To render an image from a Neural Radiance Field, a ray is cast through space for each pixel in the virtual image plane. According to a sampling process, the ray is evaluated at specific points in the NeRF:</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/replicate-prediction-q8yn62gnbhrj20cm5efa2cqsfg_34643c2623b27f8f20af7edf94153ffd_800.webp" alt="Source: NeRF paper, Mildenhall et al."><figcaption><em>Source: NeRF paper, Mildenhall et al.</em></figcaption></figure>
<p>The volume density contains information on the composition of the scene and guides the color aggregation process along the rays. This geometric understanding will be the basis for obtaining 3D assets with NeRFs. Extracting a mesh from a density field is possible with a <a href="https://en.wikipedia.org/wiki/Marching_cubes">Marching Cubes</a> algorithm. This works by voxelizing the volume and using the NeRF density to determine whether each vertex is inside or outside of a surface. Marching Cubes then checks each voxel (cube) individually for how the surface intersects its edges, and selects a polygonal pattern (from a small lookup table) that best approximates the shape within that region, as shown below.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/look-up-table-for-the-marching-cubes-algorithm-13_6e0961c7d25489cc34766198440a58ba_800.webp" alt="Marching Cubes lookup table for mesh faces. Red vertices are inside the surface. Source: Isovox"><figcaption><em>Marching Cubes lookup table for mesh faces. Red vertices are inside the surface. Source: <a href="https://www.researchgate.net/publication/228454597_Isovox_A_Brick-Octree_Approach_to_Indirect_Visualization">Isovox</a></em></figcaption></figure>
<p><strong>Gaussian Splatting (GS),</strong> is a more recent method for novel view synthesis and is aimed at real-time applications. GS represents 3D scenes as a cloud of colored Gaussians, without any neural networks involved. In essence, each Gaussian has a position <strong>μ</strong>, covariance <strong>Σ</strong>, maximum density σ and a color c that describe local structure and color. Similar to rendering with Neural Radiance Fields, rays are cast from a virtual image plane through the scene:</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/replicate-prediction-ty9gqzt6hhrj60cm5fvr9dfq8c_a7df1ec623aef43e690778ae1bc96556_800.webp" alt="3D Generative AI: Image-based 3D reconstruction"></figure>
<p>Each ray aggregates color from the Gaussian kernels in the scene. The color contribution of each kernel is weighted by its maximum density and proximity to the ray. The following formula shows the contributed density for kernel <em>i</em> for position <strong>x</strong> on the ray.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/screenshot-2025-01-03-at-145543_04747490901f280e4d327469e137d1b1_800.webp" alt="3D Generative AI: Image-based 3D reconstruction"></figure>
<p>In reality the Gaussians are projected onto the image plane and rendering is done through simple α-compositing of kernels sorted on distance. Most kernels can be efficiently pruned, reducing the inference time even more. This type of optimizations, combined with the absence of neural networks, make Gaussian Splatting about 100x more efficient than Neural Radiance Fields in rendering speed.</p>
<p>While Gaussian Splatting represents the scene’s geometry implicitly through the positions and covariances of splats, extracting a clean, explicit mesh is not straightforward-especially for translucent or mirror-like surfaces where splats do not encode a single, solid boundary. Unlike density fields (where Marching Cubes can be directly applied), the soft nature of Gaussian splats leads to ambiguities about whether a particular region is “inside” or “outside” a surface. Some recent adaptations of GS explicitly link the Gaussians to underlying geometry, but this is still an active research area. In Trellis, Gaussian Splatting serves as medium for image reconstruction losses.</p>
<h3>1.2 DreamFusion: Pioneering general 3D generation</h3>
<p><strong>Dreamfusion</strong> is the first academic work that successfully generated 3D assets in a <em>generalizable</em> way, published by <a href="https://arxiv.org/abs/2209.14988">Poole et al. at ICLR 2023</a>. Prior to its development, 3D generation models showed good quality, but were constrained to specific object categories like chairs, limiting their versatility. Dreamfusion, on the other hand, builds upon 2D image generation methods that can generalize across millions of objects.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/screenshot-2025-01-03-at-150523_51ff1d528960501ebec76d6b6d593a4b_800.jpeg" alt="3D model of “a frog wearing a sweater” Source: DreamFusion"><figcaption><em>3D model of “a frog wearing a sweater” Source: <a href="https://dreamfusion3d.github.io/">DreamFusion</a></em></figcaption></figure>
<p>The main trick in Dreamfusion’s approach lies in its use of a <strong>pre-trained</strong> <strong>2D Diffusion model</strong>, <a href="https://imagen.research.google/">Imagen</a> in this case, to optimize a Neural Radiance Field representation. Given a text prompt describing the object the user wants to generate, Dreamfusion fits a single Neural Radiance Field initialized from scratch.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/replicate-prediction-3whm4w4tq5rj60cm8zeae1hrbg_3b4a122cbc1a014c1e9469a2750d8111_800.webp" alt="Overview for DreamFusion. Adapted from Poole et al."><figcaption><em>Overview for DreamFusion. Adapted from <a href="https://arxiv.org/abs/2209.14988">Poole et al.</a></em></figcaption></figure>
<p><strong>Optimization at inference.</strong> The pre-trained diffusion model is used as a critic to guide the NeRF towards a plausible generation. The optimization process works by taking a camera perspective and rendering the according view from the NeRF. Then, the novel view is combined with sampled noise and is passed through the diffusion model together with the text prompt. The pre-trained diffusion model predicts the noise that needs to be subtracted from its input to obtain a high quality image conditioned on the text prompt. DreamFusion looks at the difference between sampled noise and predicted noise:</p>
<p>If the predicted noise is close to the added noise, the noise difference is small, implying that the rendered view was of high quality.</p>
<p>Conversely, if the predicted noise deviates significantly from the added noise, this indicates that the diffusion model corrected substantial issues in the image, suggesting that the NeRFs performance was poor.</p>
<p>This clever idea is referred to as <strong>Score Distillation Sampling (SDS)</strong> in literature and forms the loss function for fitting the Neural Radiance Field. By iteratively refining the NeRF using this feedback loop, DreamFusion generates NeRFs of any object that is well-known to the pre-trained image generation model.</p>
<p>DreamFusion remains just a strong piece of research however. It’s <strong>practical applicability is limited due to its mid quality and long inference time</strong> (1.5h). Considering that the authors only used 64x64 images, the overal results are still impressive. Follow-up work, such as the Large Reconstuction Model, focused on improving the inference time and quality.</p>
<h2>1.3 Large Reconstruction Model</h2>
<p>To address slow inference in DreamFusion, the <strong>Large Reconstruction Model (LRM)</strong> was proposed by <a href="https://arxiv.org/abs/2311.04400">Hong et al (ICLR 2024)</a>. LRM takes a different approach to representing Neural Radiance Fields, specifically leveraging the triplane NeRFto improve inference time.</p>
<p>A <strong>triplane NeRF</strong> is an adapted version of the original Neural Radiance Field, introduced by <a href="https://openaccess.thecvf.com/content/CVPR2022/html/Chan_Efficient_Geometry-Aware_3D_Generative_Adversarial_Networks_CVPR_2022_paper.html">Chan et al. 2022</a>. While classic NeRFs are entirely implicit functions, just one neural network for predicting everything, triplane NeRFs use intermediate feature maps. These are predicted with a pre-trained backbone that infers features from input images. The pre-trained backbone adds more prior information to the procedure, improving the final RGBσ regression and reducing the inference time. When a triplane NeRF is queried with an XYZ coordinate, a feature vector is aggregated by averaging the values from the closest pixels in the three orthogonal feature maps, as seen below. This aggregated feature vector is then used to regress the eventual RGBσ output with only a few fully-connected layers.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/triplane-nerf_9505191c882164817c3c3dec7f9a33c9_800.webp" alt="Triplane NeRF representation. Source: Chan et al. (CVPR 2022)"><figcaption><em>Triplane NeRF representation. Source: <a href="https://openaccess.thecvf.com/content/CVPR2022/html/Chan_Efficient_Geometry-Aware_3D_Generative_Adversarial_Networks_CVPR_2022_paper.html">Chan et al.</a> (CVPR 2022)</em></figcaption></figure>
<p><strong>Avoiding cubic scaling.</strong> Ideally, there would be an NxNxN grid with feature vectors instead of 3 feature maps with NxN grids to have even better locality in the NeRF, but the cubic scaling would be too inefficient to scale to high resolution. The triplane representation proves to be a good tradeoff between resolution and scalability. We will later see how Trellis puts a spin on this and uses voxelized 3D surfaces instead of straight planes to improve the locality but remain efficient.</p>
<p>The <strong>Large Reconstruction Model</strong> is an image-to-3D model that manages to reduce the inference time to less than 10s thanks to the triplane representation. The authors shifted the computational efforts from test time to train time. A training procedure is introduced where a pre-trained <a href="https://arxiv.org/abs/2304.07193">DINO</a> encoder is used together with a custom decoder for inferring triplane maps. The model is trained on multi-view renders from the <a href="https://arxiv.org/abs/2212.08051">Objaverse</a> dataset, containing 800k textured 3D objects. After training, text-to-image models can be chained before the LRM to create a text-to-3D model.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/replicate-prediction-w0chpfayxxrj60cmdv68j6sham_97f8420dac0d5886c0d17d70b6f5b306_800.webp" alt="Overview of the Large Reconstruction Model work. Figure adapted from InstantMesh"><figcaption><em>Overview of the Large Reconstruction Model work. Figure adapted from <a href="https://arxiv.org/abs/2404.07191">InstantMesh</a></em></figcaption></figure>
<p>The improvement of <strong>LRM over DreamFusion</strong> comes from its practical applicability. Where DreamFusion showed that a 3D generative model can generalize over millions of categories, LRM showed that 3D generative models can also be practical. For both works, the output quality is still below the level where a creative would start working on the object however. DreamFusion’s overal resolution was too low, as it only used 64x64 images. LRM was trained with 512x512 images, resulting in improved resolution, but it suffered from inconsistent quality between different views. Objects only look good from the perspective of the input image, as shown below.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/screenshot-2025-01-09-at-003431_507ac69a78506f5d935bd4eaa5208445_800.webp" alt="3D Generative AI: Image-based 3D reconstruction"></figure>
<h3>1.4 InstantMesh</h3>
<p>The <strong>Large Reconstruction Model (LRM)</strong> set the stage for many follow-up works that extended its pipeline to enhance geometric consistency and overall quality. <strong>InstantMesh,</strong> <a href="https://arxiv.org/abs/2404.07191">Xu et al. 2024</a>, is a notable follow-up that introduced multi-view input and direct feedback from 3D meshes to improve the consistency from different perspectives. Furthermore, InstantMesh brings the possibility for PBR materials such as normal maps, important for creative workflows.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/screenshot-2025-01-03-at-152854_d2d862d1847abf28cf22518417272200_800.webp" alt="InstantMesh pipeline. Source: InstantMesh"><figcaption><em>InstantMesh pipeline. Source: InstantMesh</em></figcaption></figure>
<p><strong>Multi-view input</strong>. InstantMesh uses 6 input images from different perspectives to have richer geometric information. For a user, it is non-trivial to provide 6 images without having the 3D object already. Therefore, Xu et al. use a multi-view diffusion model, <a href="https://arxiv.org/abs/2310.15110">Zero123++</a>, to generate 6 views from one input image. Next, the same encoder as in LRM is applied six times separately and the LRM decoder is retrained to work with 6x image tokens.</p>
<p><strong>Geometric feedback.</strong> Another significant improvement involves incorporating explicit 3D data into the training process. Until this point, both DreamFusion and LRM had relied exclusively on image-based losses. From an inferred triplane NeRF, the authors extract a 3D mesh in a differentiable manner, allowing to propagate mesh reconstruction losses back into the LRM. InstantMesh relies on a parameterized Marching Cubes algorithm called <a href="https://research.nvidia.com/labs/toronto-ai/flexicubes/">FlexiCubes</a> for this.</p>
<p><strong>Quality.</strong> InstantMesh brought 3D generation to a point where it is practically useful. It can generate a wide variety of objects, within a minute, with a level of quality that is sufficient to start working on in some cases. In particular for background props that are not animated, InstantMesh can be useful for inspiration or as starting point for a sculpt. For important characters that require detail and animation, the geometry, textures and mesh topology are not good enough yet.</p>
<p>Now the question arises: can 3D generation be pushed further to achieve more faithful geometry, higher-quality textures, and greater editability? Considering that the amount of open source 3D objects is limited, this is a tough challenge. This is precisely where Trellis makes its mark, starting from this pipeline introducing innovations-like voxelized surfaces and latent space Flow Matching to take 3D generation to the next level.</p>
<h2>2. Trellis</h2>
<p>Last month Microsoft released Trellis, <a href="https://arxiv.org/abs/2412.01506">Xiang et al. 2024</a>, which inherits many ideas from InstantMesh and brings each step in the pipeline to another level.</p>
<p>Two improvements stand-out: (1) triplanes are replaced with voxelized 3D surfaces and (2) the generative process is moved from image space to the latent 3D space. The result is high quality geometry, improved textures and a framework that allows more control and editability in the 3D generation process.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/screenshot-2025-01-03-at-172324_dc762a3187cbb42b13b520396444ca76_800.webp" alt="Converting textured meshes to surface voxels with DINO feature vectors."><figcaption><em>Converting textured meshes to surface voxels with DINO feature vectors.</em></figcaption></figure>
<p><strong>Evolving triplanes to surface voxels.</strong> Instead of using triplane feature maps, Trellis introduces sparse voxels with features. In a 64^3 grid, <strong>voxels are activated at the surface of the 3D object</strong>, as shown in the figure above. 150 renders are made for each object and are encoded into features with a <a href="https://arxiv.org/abs/2304.07193">DINOv2</a> backbone. Each voxel receives features that are projected from the visible DINOv2 output. Compared to a triplane feature representation, the sparse voxel features are closer to the location where the information is needed. At the same time, the dimensionality does not explode. In the Trellis training set, each object reportedly has 20K active voxels on average out of (7.63% grid occupation), where a triplane representation would have 12K feature pixels (4.69% grid occupation).</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/replicate-prediction-j10ahb1hs5rmc0cm7hfvhqe3r4_1948aa803fdf214e17fd8b7a38b6e8f7_800.webp" alt="[Technical] Decoding features to 3D Gaussian Splats, NeRFs and meshes. From the surface voxels with features, Trellis offers three decoders: one for Gaussian Splats, one for NeRFs and one for triangle meshes. Each of these modalities are non-trivial to predict with deep learning models and require specific differentiable loss functions. For Gaussian Splats, 32 gaussian kernels are created for each voxel by predicting the location, scale, orientation, density and color as described in Section 2.1. Views are sampled from the splats and compared to renders from the actual scene with image reconstruction losses (D-SSIM and LPIPS). The Neural Radiance Field decoder predicts 4 feature vectors per voxel that represent a CP-decomposition as in Tensorial Radiance Fields, a supercharged version of triplane NeRFs. The NeRF decoder is trained with the same reconstruction losses as Gaussian Splats. Meshes are predicted by upsampling the voxel grid from 64^3 to 256^3 and regressing SDF values on the 8 voxel vertices together with all required parameters for FlexiCubes. The reconstruction loss for the mesh decoder is defined on the depth and normal maps rendered from the original 3D object and the reconstructed mesh. Generative model overview. On the algorithmic side, Trellis differs the most from DreamFusion, LRM and InstantMesh by not performing the generative process in image space, but rather on the sparse feature voxels to stay closer to 3D space. There will be two generative models: one for generating surface voxels in 3D and one for generating features in the voxels. Trellis uses Flow Matching in latent space as generative process. Additionally, the authors curated a more qualitative dataset. It is not clear from their report however which improvement was more impactful, the dataset or the algorithm. An overview of all components: Dataset: a high quality 3D dataset with 500k samples is curated from 10mil objects in Objaverse-XL. From each object, &gt;100 images, depth maps and normal maps are rendered. Surface voxels are generated for all objects. Rendered images are captioned and summarized per object with GPT-4o. Variational AutoEncoder (VAE): a VAE is trained to create a downsampled latent space in which the generative process will take place, as in Latent Diffusion. This VAE is only used for the model that generates features in the voxels, not for the model that generates the voxel structure. Flow model training for structure generation: a Flow Matching model is trained to generate voxel structures from a random binary 64x64x64 grid. The model can be conditioned on text or image input. A more detailed description is given below. Flow model training for latent feature generation: a second Flow Matching model is trained to generate latent features in the surface voxels. This model generates latent features that match the VAE encoder output, conditioned on the voxel structure and text or image input. Training a Variational AutoEncoder (VAE) in Trellis. Source: Trellis authors Variational Auto Encoder (VAE) for latent generation. An important trick in generative modeling is to perform the generation process in a downscaled latent space. This speeds up the generation process and improves generalization capabilities significantly as the input dimensionality is lower. Trellis uses this trick as well and trains a VAE encoder to reduce the dimension of the features in each voxel from 1024 to 8. The VAE decoder learns to infer the parameters for the 3 output modalities from these small feature vectors. In practice, the authors first trained an encoder-decoder only with Gaussian Splatting. Afterwards, the the final layer in the decoder was replaced with new layers that were trained separately to predict NeRF and FlexiCubes parameters. VAE architecture. The encoder and decoder architecture are a 3D variant of Shifted Window Transformers. Attention is only applied to tokens in a local 8x8x8 window to limit the attention matrix. Each token corresponds to one active voxel, empty voxels do not get a token, reducing the attention matrix by another order of magnitude. Tokens are created by projecting the features of an active voxel with a linear layer and adding a sinusoidal positional encoding based on its location in the grid. Flow Matching for generative modeling. The Trellis authors use Flow Matching in latent space to generate the voxel structure and the voxel features. Flow Matching is similar to Diffusion and has become popular thanks to its faster sampling process. Where Diffusion relies on a Markov Process (MP) to (de)noise samples, Flow Matching defines a more general theory for transforming one distribution to another using vector fields. The theory is more abstract, but in practice the MP is just replaced with linear interpolation. In the formulas below, given a ground truth sample xgt and noise ε at timestep t, a noisy sample xnoised is interpolated. Next, the Flow Matching (FM) objective is defined for the denoising model vθ(x,t) with parameters θ that learns to predict the added noise inxnoised. Generation process for sparse voxels representing 3D surfaces. Inputs: random binary grid and text/image conditioning. Adapted from Xiang et al. Structure generation. The first Flow Transformer learns to generate sparse structures, where empty/active voxels are indicated 0/1. Since this Transformer model is not a windowed Transformer and because it works on a dense 64x64x64 grid, there would be 262k tokens to attend to at once. As it is computationally expensive to generate directly in the 64x64x64 space, the authors train additional downsampling and upsampling layers that downsample the binary grid into a 16x16x16 grid with latent vectors of 8 dimensions. Given text or image conditioning (cross-attention with CLIP or DINOv2 tokens) and downsampled random grids, the model is trained to generate latent vectors that are upsampled back to a binary grid. Structured latent feature generation for each active voxel, initialized with random 8-dim vectors. Adapted from Xiang et al. Latent feature generation. For the last step, a Flow Transformer is trained to generate features for the surface voxels in the VAE latent space. Similar to the structure generation, the authors introduce additional downsampling and upsampling layers to improve the efficiency. After the latent feature generation, the VAE decoders can infer Gaussian Splats, a NeRF or a 3D mesh. Image-to-3D comparison between InstantMesh and Trellis. Source: Trellis Output quality and usability. Overall, Trellis takes a big step forward in texture quality and geometric detail. For simple background props, it is almost possible to generate game-ready geometry. Textures often need to get some reworking to get rendering-ready. The paper reports a user study where Trellis is compared to InstantMesh and 5 other scientific works (not including commercial tools), finding that Trellis is preferred by users in 67.1% of the text-to-3D generations and in 94.5% of the image-to-3D generations. Practical advantages in Trellis. With these core ideas in place, Trellis offers several practical advantages that set it apart from prior work. Creatives typically work in iterations to improve their work.While NeRFs and meshes from the previous 3D generative models are typically non-trivial to edit, the sparse voxels in Trellis are much easier to touch on. In addition, the latent generative process can be masked to only change a specific region. Trellis was released with a MIT-license, which means you can build with it like you want, even commercially. However, there are a couple of Nvidia dependencies that are not available for commercial use. For the open source community, Trellis is an amazing starting point for which we will hopefully see similar tooling as for image generation models, e.g. infill models, upscalers, ... 3. Trellis and friends While we’ve already discussed Trellis, other commercial tools released in the past 12 months also deliver outstanding results. Notably, Tripo by Tripo AI, Rodin by Hyper3D, Spar3D by StabilityAI and the just released Hunyuan3D-2 by Tencent have pushed the boundaries of what’s possible, all focusing on image-to-3D. To showcase the differences and similarities among these tools, we provide a visual comparison of their outputs below. Comparison for image-to-3D models, showing textures and geometry. Swipe for more examples. Source: author. Visual comparison discussion. These conclusions are based on more than 2 examples, but for brevity I have only included 2. As seen in the examples above, Trellis, Tripo and Hunyuan3D are closest to the intended geometry in the image, altough Trellis and Hunyuan3D fail at handling the ladder well in the adventurer case. Rodin also shows high quality geometry, but seems to deviate from the input image. For texture quality, Tripo and Rodin seem to show the highest quality, where Tripo is definitely closest to the original image. Trellis and Hunyuan3D also remain close to the original image, but have a dark tone in all of their generations SPAR3D is clearly subpar in quality, but is much faster. In the table below, there is a detailed comparison considering quality and practical aspects. Detailed comparison table considering quality, inference time, cost per use and availability. Behind the scenes. The commercial tools have their grounding in research and all companies published a technical paper at some point. Given the background in Section 1 and Section 2, it is not hard to have a high-level understanding of the other models: Tripo, report, was originally based on LRM, with improved data curation and small changes to reduce GPU memory usage. Their report is the oldest among all compared models and it is unclear how close their current model is to the one in the report. Given the high quality, it is to be expected that their dataset and/or architecture must have improved significantly. SPAR3D, report, was only released this month, and shows a generative process working on sparse point clouds (instead of surface voxels in Trellis) that allow very flexible editing. The point cloud is decoded into a triplane NeRF with CP-decomposition as in Trellis, from which geometry is extracted with differentiable Marching Cubes, as well as PBR materials with an illumination model RENI++. Its inference speed and control through point cloud editing are remarkable, let’s hope that the output quality is improved in the coming year. For the moment, SPAR3D remains an strong piece of research, but not a practical tool. Rodin, report,differs the most from the previously covered works. Just as Trellis, it breaks down the generation process into one generative model for geometry and one for materials. The geometric generative model works on downsampled point clouds (based on 3DShape2VecSet), something in between SPAR3D’s point cloud diffusion and Trellis’ downsampled voxel generation, followed by a decoder that predicts a volumetric function for applying the Marching Cubes algorithm to. For generating textures, Rodin has a very interesting approach which combines existing image generation models and UV mapping. Hunyuan3D-2, report, is similar to Rodin’s pipeline. Their VAE is also inspired by the 3DShape2VecSet architecture and there are separate models for geometry generation and texture generation. The most notable differences introduced by Hunyuan3D-2 are in the texture generation, e.g. there is a delighting model for obtaining albedo colors in input images, and the use of Flow Matching Transformers as used in Flux. Conclusion In conclusion, there have been major leaps forward in the past 2 years for 3D generation. The resulting models are never just one neural network but a pipeline of existing image models glued together with small custom networks and other algorithms. The results are great for generating simple assets as inspiration and starting point for 3D modeling. For important characters and objects requiring animations, there are still significant barriers before they become truly production-ready. Most notably, topologies are often not suited for rigging or animation, and the outputs can require extensive cleanup or manual retopology. Even high-quality generation models miss crucial surface attributes like UV layouts or PBR-friendly materials, making advanced texturing or lighting workflows a challenge. For many industries-ranging from game development to robotics-consistency and precise scale are essential, yet these generative models lack the tools to control the generative process with low tolerances. It’s these types of pain points that Datameister tackles head-on, merging research with engineering rigor to produce tools that are not just concept demonstrations but fully integrated systems for commercial and creative use. In case you are looking for a partner to build 3D generative applications, do not hesitate to contact us."><figcaption><strong>[Technical] Decoding features to 3D Gaussian Splats, NeRFs and meshes.</strong> From the surface voxels with features, Trellis offers three decoders: one for Gaussian Splats, one for NeRFs and one for triangle meshes. Each of these modalities are non-trivial to predict with deep learning models and require specific differentiable loss functions. For <strong>Gaussian Splats</strong>, 32 gaussian kernels are created for each voxel by predicting the location, scale, orientation, density and color as described in Section 2.1. Views are sampled from the splats and compared to renders from the actual scene with image reconstruction losses (D-SSIM and LPIPS). The <strong>Neural Radiance Field</strong> decoder predicts 4 feature vectors per voxel that represent a <a href="https://en.wikipedia.org/wiki/Tensor_rank_decomposition">CP-decomposition</a> as in <a href="https://apchenstu.github.io/TensoRF/">Tensorial Radiance Fields</a>, a supercharged version of triplane NeRFs. The NeRF decoder is trained with the same reconstruction losses as Gaussian Splats. <strong>Meshes</strong> are predicted by upsampling the voxel grid from 64^3 to 256^3 and regressing SDF values on the 8 voxel vertices together with all required parameters for <strong>FlexiCubes</strong>. The reconstruction loss for the mesh decoder is defined on the depth and normal maps rendered from the original 3D object and the reconstructed mesh.</p>
<p><strong>Generative model overview.</strong> On the algorithmic side, Trellis differs the most from DreamFusion, LRM and InstantMesh by not performing the generative process in image space, but rather on the sparse feature voxels to stay closer to 3D space. There will be two generative models: one for generating surface voxels in 3D and one for generating features in the voxels. Trellis uses Flow Matching in latent space as generative process. Additionally, the authors curated a more qualitative dataset. It is not clear from their report however which improvement was more impactful, the dataset or the algorithm. An overview of all components:</p>
<p><strong>Dataset:</strong> a high quality 3D dataset with 500k samples is curated from 10mil objects in <a href="https://objaverse.allenai.org/">Objaverse-XL</a>. From each object, &gt;100 images, depth maps and normal maps are rendered. Surface voxels are generated for all objects. Rendered images are captioned and summarized per object with GPT-4o.</p>
<p><strong>Variational AutoEncoder (VAE):</strong> a VAE is trained to create a downsampled latent space in which the generative process will take place, as in <a href="https://arxiv.org/abs/2112.10752">Latent Diffusion</a>. This VAE is only used for the model that generates features in the voxels, not for the model that generates the voxel structure.</p>
<p><strong>Flow model training for structure generation:</strong> a Flow Matching model is trained to generate voxel structures from a random binary 64x64x64 grid. The model can be conditioned on text or image input. A more detailed description is given below.</p>
<p><strong>Flow model training for latent feature generation:</strong> a second Flow Matching model is trained to generate latent features in the surface voxels. This model generates latent features that match the VAE encoder output, conditioned on the voxel structure and text or image input.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/screenshot-2025-01-06-at-165629_c1f0ecbc40703fdceeec130f39d86d2f_800.webp" alt="3D Generative AI: Image-based 3D reconstruction"></figure>
<p><em>Training a Variational AutoEncoder (VAE) in Trellis. Source: <a href="https://arxiv.org/abs/2412.01506">Trellis authors</a></em></p>
<p><strong>Variational Auto Encoder (VAE) for latent generation.</strong> An important trick in generative modeling is to perform the generation process in a downscaled latent space. This speeds up the generation process and improves generalization capabilities significantly as the input dimensionality is lower. Trellis uses this trick as well and trains a VAE encoder to reduce the dimension of the features in each voxel from 1024 to 8. The VAE decoder learns to infer the parameters for the 3 output modalities from these small feature vectors. In practice, the authors first trained an encoder-decoder only with Gaussian Splatting. Afterwards, the the final layer in the decoder was replaced with new layers that were trained separately to predict NeRF and FlexiCubes parameters.</p>
<p><strong>VAE architecture.</strong> The encoder and decoder architecture are a 3D variant of <a href="https://openaccess.thecvf.com/content/ICCV2021/html/Liu_Swin_Transformer_Hierarchical_Vision_Transformer_Using_Shifted_Windows_ICCV_2021_paper">Shifted Window Transformers</a>. Attention is only applied to tokens in a local 8x8x8 window to limit the attention matrix. Each token corresponds to one active voxel, empty voxels do not get a token, reducing the attention matrix by another order of magnitude. Tokens are created by projecting the features of an active voxel with a linear layer and adding a sinusoidal positional encoding based on its location in the grid.</p>
<p><strong>Flow Matching for generative modeling.</strong> The Trellis authors use <a href="https://arxiv.org/abs/2210.02747">Flow Matching</a> in latent space to generate the voxel structure and the voxel features. Flow Matching is similar to Diffusion and has become popular thanks to its faster sampling process. Where Diffusion relies on a Markov Process (MP) to (de)noise samples, Flow Matching defines a more general theory for transforming one distribution to another using vector fields. The theory is more abstract, but in practice the MP is just replaced with linear interpolation. In the formulas below, given a ground truth sample <strong>x</strong>gt and noise <strong>ε</strong> at timestep <em>t</em>, a noisy sample <strong>x</strong>noised is interpolated. Next, the Flow Matching (FM) objective is defined for the denoising model <strong>v</strong><em>θ</em>(<strong>x</strong>,<em>t</em>) with parameters <em>θ</em> that learns to predict the added noise in<strong>x</strong>noised.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/replicate-prediction-sy63tzxqv9rg80cm80rsbwbfmg_4df111b59fd8b8fc1943701d0a804891_800.webp" alt="3D Generative AI: Image-based 3D reconstruction"></figure>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/screenshot-2025-01-03-at-172602_7c7de8d447ef2f269e3116e29a2bae5f_800.webp" alt="3D Generative AI: Image-based 3D reconstruction"></figure>
<p><em>Generation process for sparse voxels representing 3D surfaces. Inputs: random binary grid and text/image conditioning. Adapted from <a href="https://arxiv.org/pdf/2412.01506">Xiang et al.</a></em></p>
<p><strong>Structure generation.</strong> The first Flow Transformer learns to generate sparse structures, where empty/active voxels are indicated 0/1. Since this Transformer model is not a windowed Transformer and because it works on a dense 64x64x64 grid, there would be 262k tokens to attend to at once. As it is computationally expensive to generate directly in the 64x64x64 space, the authors train additional downsampling and upsampling layers that downsample the binary grid into a 16x16x16 grid with latent vectors of 8 dimensions. Given text or image conditioning (cross-attention with CLIP or DINOv2 tokens) and downsampled random grids, the model is trained to generate latent vectors that are upsampled back to a binary grid.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/screenshot-2025-01-07-at-200152_a0886605d1c8ed071100610ff6d8880f_800.webp" alt="3D Generative AI: Image-based 3D reconstruction"></figure>
<p><em>Structured latent feature generation for each active voxel, initialized with random 8-dim vectors. Adapted from <a href="https://arxiv.org/pdf/2412.01506">Xiang et al.</a></em></p>
<p><strong>Latent feature generation.</strong> For the last step, a Flow Transformer is trained to generate features for the surface voxels in the VAE latent space. Similar to the structure generation, the authors introduce additional downsampling and upsampling layers to improve the efficiency. After the latent feature generation, the VAE decoders can infer Gaussian Splats, a NeRF or a 3D mesh.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/trellis-vs-instantmesh-1_55e87d4f29358d5daf967788036ce720_800.webp" alt="3D Generative AI: Image-based 3D reconstruction"></figure>
<p><em>Image-to-3D comparison between InstantMesh and Trellis. Source: <a href="https://arxiv.org/pdf/2412.01506">Trellis</a></em></p>
<p><strong>Output quality and usability.</strong> Overall, Trellis takes a big step forward in texture quality and geometric detail. For simple background props, it is almost possible to generate game-ready geometry. Textures often need to get some reworking to get rendering-ready. The paper reports a user study where Trellis is compared to InstantMesh and 5 other scientific works (not including commercial tools), finding that Trellis is preferred by users in 67.1% of the text-to-3D generations and in 94.5% of the image-to-3D generations.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/screenshot-2025-01-16-at-180243_8605770ffff5966649cf90988ad6b26d_800.webp" alt="3D Generative AI: Image-based 3D reconstruction"></figure>
<p><strong>Practical advantages in Trellis.</strong> With these core ideas in place, Trellis offers several practical advantages that set it apart from prior work.</p>
<p>Creatives typically work in iterations to improve their work.While NeRFs and meshes from the previous 3D generative models are typically non-trivial to edit, the sparse voxels in Trellis are much easier to touch on. In addition, the latent generative process can be masked to only change a specific region.</p>
<p>Trellis was released with a MIT-license, which means you can build with it like you want, even commercially. However, there are a couple of Nvidia dependencies that are not available for commercial use. For the open source community, Trellis is an amazing starting point for which we will hopefully see similar tooling as for image generation models, e.g. infill models, upscalers, ...</p>
<h2>3. Trellis and friends</h2>
<p>While we’ve already discussed Trellis, other commercial tools released in the past 12 months also deliver outstanding results. Notably, <a href="https://www.tripo3d.ai/">Tripo by Tripo AI</a>, <a href="https://hyper3d.ai/rodin">Rodin by Hyper3D</a>, <a href="https://spar3d.github.io/">Spar3D by StabilityAI</a> and the just released <a href="https://github.com/Tencent/Hunyuan3D-2">Hunyuan3D-2 by Tencent</a> have pushed the boundaries of what’s possible, all focusing on image-to-3D. To showcase the differences and similarities among these tools, we provide a <strong>visual comparison</strong> of their outputs below.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/troll-2_859c08928d320a01acfc539f506fd6a0_800.webp" alt="3D Generative AI: Image-based 3D reconstruction"></figure>
<p><em>Comparison for image-to-3D models, showing textures and geometry. Swipe for more examples. Source: author.</em></p>
<p><strong>Visual comparison discussion.</strong> <em>These conclusions are based on more than 2 examples, but for brevity I have only included 2.</em> As seen in the examples above, Trellis, Tripo and Hunyuan3D are closest to the intended geometry in the image, altough Trellis and Hunyuan3D fail at handling the ladder well in the adventurer case. Rodin also shows high quality geometry, but seems to deviate from the input image. For texture quality, Tripo and Rodin seem to show the highest quality, where Tripo is definitely closest to the original image. Trellis and Hunyuan3D also remain close to the original image, but have a dark tone in all of their generations SPAR3D is clearly subpar in quality, but is much faster. In the table below, there is a detailed comparison considering quality and practical aspects.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/3d-generative-ai-image-based-3d-reconstruction/screenshot-2025-01-23-at-150338_c17f813b8f7dbafbc2226cf0eab62e5c_800.webp" alt="3D Generative AI: Image-based 3D reconstruction"></figure>
<p><em>Detailed comparison table considering quality, inference time, cost per use and availability.</em></p>
<p><strong>Behind the scenes.</strong> The commercial tools have their grounding in research and all companies published a technical paper at some point. Given the background in Section 1 and Section 2, it is not hard to have a high-level understanding of the other models:</p>
<p><strong>Tripo</strong>, <a href="https://arxiv.org/abs/2403.02151">report</a>, was originally based on LRM, with improved data curation and small changes to reduce GPU memory usage. Their report is the oldest among all compared models and it is unclear how close their current model is to the one in the report. Given the high quality, it is to be expected that their dataset and/or architecture must have improved significantly.</p>
<p><strong>SPAR3D</strong>, <a href="https://arxiv.org/abs/2501.04689">report</a>, was only released this month, and shows a generative process working on sparse point clouds (instead of surface voxels in Trellis) that allow very flexible editing. The point cloud is decoded into a triplane NeRF with CP-decomposition as in Trellis, from which geometry is extracted with differentiable Marching Cubes, as well as PBR materials with an illumination model <a href="https://arxiv.org/abs/2311.09361">RENI++</a>. Its inference speed and control through point cloud editing are remarkable, let’s hope that the output quality is improved in the coming year. For the moment, SPAR3D remains an strong piece of research, but not a practical tool.</p>
<p><strong>Rodin</strong>, <a href="https://arxiv.org/abs/2406.13897">report</a>,differs the most from the previously covered works. Just as Trellis, it breaks down the generation process into one generative model for geometry and one for materials. The geometric generative model works on downsampled point clouds (based on <a href="https://arxiv.org/pdf/2301.11445">3DShape2VecSet</a>), something in between SPAR3D’s point cloud diffusion and Trellis’ downsampled voxel generation, followed by a decoder that predicts a volumetric function for applying the Marching Cubes algorithm to. For generating textures, Rodin has a very interesting approach which combines existing image generation models and UV mapping.</p>
<p><strong>Hunyuan3D-2</strong>, <a href="https://arxiv.org/html/2501.12202v1">report</a>, is similar to Rodin’s pipeline. Their VAE is also inspired by the 3DShape2VecSet architecture and there are separate models for geometry generation and texture generation. The most notable differences introduced by Hunyuan3D-2 are in the texture generation, e.g. there is a delighting model for obtaining albedo colors in input images, and the use of Flow Matching Transformers as used in <a href="https://github.com/black-forest-labs/flux">Flux</a>.</p>
<h2>Conclusion</h2>
<p>In conclusion, there have been major leaps forward in the past 2 years for 3D generation. The resulting models are never just one neural network but a pipeline of existing image models glued together with small custom networks and other algorithms. The results are great for generating simple assets as inspiration and starting point for 3D modeling. For important characters and objects requiring animations, there are still significant barriers before they become truly production-ready. Most notably, topologies are often not suited for rigging or animation, and the outputs can require extensive cleanup or manual retopology. Even high-quality generation models miss crucial surface attributes like UV layouts or PBR-friendly materials, making advanced texturing or lighting workflows a challenge. For many industries-ranging from game development to robotics-consistency and precise scale are essential, yet these generative models lack the tools to control the generative process with low tolerances.</p>
<p>It’s these types of pain points that Datameister tackles head-on, merging research with engineering rigor to produce tools that are not just concept demonstrations but fully integrated systems for commercial and creative use. <strong>In case you are looking for a partner to build 3D generative applications, do not hesitate to contact us.</strong></figcaption></figure>
<p>For 2025, <strong>Datameister is looking to hire several ML engineers and interns</strong> working on computer vision &amp; graphics in the creative world, robotics simulation and sport analytics. If you consider applying for internship or a full-time position, send us an email at <a href="mailto:hello@datameister.ai">hello@datameister.ai</a>!</p>
<p>A big thank you to Ruben Verhack and Liam Wezenbeek for proofreading and providing feedback!</p>
]]></content:encoded>
    </item>
    <item>
      <title>Datameister @ECCV 2024: Building a foundation</title>
      <link>https://datameister.ai/blog/datameister-at-eccv-2024-building-a-foundation-part-i/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/datameister-at-eccv-2024-building-a-foundation-part-i/</guid>
      <pubDate>Wed, 20 Nov 2024 10:48:03 GMT</pubDate>
      <dc:creator>Larsen D'hiet</dc:creator>
      <category>Events</category>
      <description>Highlights from ECCV 2024 in Milan: 3D Gaussian Splatting advances like WildGaussians and Gaussian Frosting reshaping real-time rendering.</description>
      <content:encoded><![CDATA[<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-at-eccv-2024-building-a-foundation-part-i/untitled-design-18_07117c86e4d1e64f123b7294f2baef77.jpg" alt="Datameister @ECCV 2024: Building a foundation"></figure>
<p>Avanti! 🚀</p>
<p>From September 29 until October 4, <a href="https://www.micomilano.it/en">MiCo Milano</a> was the setting for the <a href="https://eccv.ecva.net/Conferences/2024">18th European Convention on Computer Vision</a>, the two-yearly convention on the best the field of Computer Vision has to offer. As true AI builders, we at Datameister are always eager to stay updated on the latest trends and advancements in the field. Naturally, our presence in Milan was a no-brainer.</p>
<p>In this two-fold blogpost, we aim to give a short overview of general research and upcoming topics we found interesting, useful for us, or simply really exciting. <strong>The access to advanced foundation models - think of DINO, Segment Anything (SAM), or Stable Diffusion - as well as the birth of novel techniques such as Gaussian Splatting</strong> has given researchers the <strong>opportunity to explore a wide range of new ideas</strong>, of which we would like to share the most interesting ones with you.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-at-eccv-2024-building-a-foundation-part-i/img-2625_9a2e9652d5c5db364b2a9132a4812e6b_800.jpeg" alt="MiCo Milano - Europes largest convention centre - was the venue for ECCV 2024"><figcaption><em>MiCo Milano - Europes largest convention centre - was the venue for ECCV 2024</em></figcaption></figure>
<p>Before I do that, <strong>allow me to introduce myself</strong> briefly. I am Larsen, electrical engineer graduated from Ghent University with a knack for AI, signal processing, sports, and any intersection between those. Ruben and Axel guided me carefully through my masters thesis back in 2023, which made me decide to join Datameister in June this year. Between that and my graduation in June last year, I spent 7 months in Paris working at the start-up Emobot at <a href="https://stationf.co/">Station F</a>, one of the largest start-up incubators in Europe (some of you will probably know Station F as the place where Hugging Face first started in 2017).</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-at-eccv-2024-building-a-foundation-part-i/untitled-design-18_07117c86e4d1e64f123b7294f2baef77_800.jpg" alt="Larsen D’hiet - AI Engineer (author)"><figcaption><em>Larsen D’hiet - AI Engineer (author)</em></figcaption></figure>
<p>Now that we got acquainted, let’s dive into the exciting stuff! We saw three major topics coming back during workshops and poster sessions: 3D Gaussian Splatting, Diffusion for image (and short video) generation and 3D object generation and representation. In this blogpost, the first two topics will be covered. I chose to go deeper into the details of some of my personal favorites rather than for this to be a mere listing of papers. This one is for the tech-enthusiasts who are not afraid of some digging - let’s go!</p>
<hr>
<h2>3D Gaussian Splatting</h2>
<p>We kick things off with one of the favorite topics of our co-founder Ruben - if these things spark your interest, go check out his <a href="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering">earlier blogpost on image-based rendering</a>. The introduction of 3D Gaussian Splatting (3DGS) in 2023 meant an interesting exception to the reign of neural networks of the last years. The method allows for high-quality, real-time novel-view synthesis representing a scene using 3D Gaussians.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-at-eccv-2024-building-a-foundation-part-i/gaussian-splatting_e501eb2d5b34f7d5d08c4d85d4d53611_800.jpg" alt="Gaussian Splatting is a fairly novel rasterization technique that aims to draw 3D Gaussians representing physical a scene on the screen (source: AI-Driven Breakthroughs in Image-Based Rendering)"><figcaption><em>Gaussian Splatting is a fairly novel rasterization technique that aims to draw 3D Gaussians representing physical a scene on the screen (source: <a href="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering">AI-Driven Breakthroughs in Image-Based Rendering</a>)</em></figcaption></figure>
<blockquote>
<p><em>The properties of the 3D Gaussians are optimized in an end-to-end manner using gradient descent on a pixel-per-pixel loss. The resulting assembly of Gaussians accurately captures the scene and produces photo-realistic 3d views. The main drawbacks the initially proposed algorithm suffered from were high memory usage and artifacts due to occlusions, insufficient training views or lightning conditions causing view-dependent appearances of an object.</em></p>
</blockquote>
<h3>Foundation models to the rescue</h3>
<p>Many researchers at ECCV aimed to tackle one or more of the shortcomings listed above. Foundation models as Dinov2 and SAM more often than not played a significant role in that. Let’s go in short over some other interesting work on 3DGS we’ve seen.</p>
<p><strong><a href="https://wild-gaussians.github.io/">WildGaussians</a></strong> handles occlusions and appearance changes while maintaining the real-time rendering speed of 3DGS. Most notably, it leverages the <strong>difference between pre-trained <a href="https://dinov2.metademolab.com/">DINOv2</a> features of the ground-truth and rendered image</strong> to model regions of uncertainty. It does so by using a cosine similarity measure to train an uncertainty predictor. This predictor is leveraged to mask uncertain pixels in the pixel-per-pixel loss for rendering training. The resulting <em>uncertainty modeling</em> reduces the influence of occluders such as transient objects or pedestrians in training images.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-at-eccv-2024-building-a-foundation-part-i/wildgaussians_8ffb34526cfa535d460fdd5186cf9bce_800.jpg" alt="Uncertainty modeling using DINOv2 features to predict and mask uncertain regions in training images (source: WildGaussians paper)"><figcaption><em>Uncertainty modeling using DINOv2 features to predict and mask uncertain regions in training images (source: <a href="https://arxiv.org/pdf/2407.08447">WildGaussians paper</a>)</em></figcaption></figure>
<p><strong><a href="https://ymq2017.github.io/gaussian-grouping/">Gaussian Grouping</a> augments each Gaussian with an identity encoding</strong> allowing them to be grouped by their semantic meaning in the scene. The encodings are <strong>supervised using automatically generated <a href="https://segment-anything.com/">SAM</a> masks</strong> for each view in the training collection. Masks from different views are associated using video-like object tracking (a call for the use of SAM-2 here?). This “identity-aware Gaussian Splatting” elegantly unlocks possibilities for 3D object removal, inpainting, style transfer, and more. Go take a look on the authors’ project page, there is some cool stuff on there!</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-at-eccv-2024-building-a-foundation-part-i/gaussian-grouping_166ee4d2fa24c2b30c7f24c272b4d590_800.jpg" alt="Gaussian grouping leverages identity encodings in the process to group Gaussians representing the same object together, in order to be able to perform tasks such as 3D Object Removal and Object Inpainting (source: Gaussian Grouping paper)"><figcaption><em>Gaussian grouping leverages identity encodings in the process to group Gaussians representing the same object together, in order to be able to perform tasks such as 3D Object Removal and Object Inpainting (source: <a href="https://arxiv.org/pdf/2312.00732">Gaussian Grouping paper</a>)</em></figcaption></figure>
<p><strong><a href="https://eververas.github.io/SAGS/">SAGS</a></strong> or Structure-Aware 3D Gaussian Splattingleverages <strong>Graph Neural Networks (GNNs) operating on a k-Nearest Neighbor graph</strong> that links points within a local region. These points are expected to share common structural features. Allowing these points to interact with each other through the use of GNNs enhances scene understanding and reduces artifacts.</p>
<h3>And the award for coolest paper name goes to... <em>Gaussian Frosting</em>!</h3>
<p>Clearly, Gaussian Splatting is very well suited for fancy paper names. One more such example -and our personal favorite on this topic - is <strong><a href="https://anttwo.github.io/frosting/">Gaussian Frosting</a></strong>, a particularly fresh and creative idea fusing 3D mesh representations with Gaussian scene modeling. The key idea to Gaussian Frosting is to <strong>augment a mesh with a layer of Gaussians</strong> in order to better capture fine surface details. This allows for the representations to be editable just as a mesh, while maintaining the high rendering quality of 3DGS.</p>
<p>Gaussian Frosting starts from the observation that 3D Gaussians obtained by standard 3DGS - so-called ‘unconstrained Gaussians’ - are not regularized to align well with the surface of the scene. Algorithms such as <strong>Marching Cubes</strong> therefore <strong>fail to construct a mesh representation from an unconstrained 3DGS scene</strong>. Another paper called <a href="https://anttwo.github.io/sugar/">SuGaR</a>, by the same authors, already proposed a solution to regularizing Gaussians for surface alignment - constructing ‘regularized’ Gaussians - and subsequent mesh extraction (using Poisson reconstruction rather than Marching Cubes):</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-at-eccv-2024-building-a-foundation-part-i/gaussian-frosting-mesh_a9a2207d1abc1a2383516c8b9da44a6b_800.jpg" alt="Regularized Gaussians align better to the surface of objects in the scene and therefore result in much better mesh representations (source: Gaussian frosting paper)"><figcaption><em>Regularized Gaussians align better to the surface of objects in the scene and therefore result in much better mesh representations (source: <a href="https://arxiv.org/pdf/2403.14554">Gaussian frosting paper</a>)</em></figcaption></figure>
<p>Gaussian Frosting builds further on this by constructing a <strong>‘frosting layer’ of additional Gaussians on the extracted mesh</strong>, of which the <strong>thickness depends on the ‘fuzziness’ of the material</strong>. This ‘fuzziness’ can be formally defined by considering the thickness of both the regularized Gaussians and the unconstrained Gaussians. This allows for automatically estimating the required thickness of the frosting layer:</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-at-eccv-2024-building-a-foundation-part-i/gaussian-frosting-layer_77a59aa3e517dc58a9c8eb623bda92d6_800.jpg" alt="The required thickness of the frosting layer is determined by considering both the thickness of the regularized and unconstrained Gaussians (source: Gaussian frosting paper)"><figcaption><em>The required thickness of the frosting layer is determined by considering both the thickness of the regularized and unconstrained Gaussians (source: <a href="https://arxiv.org/pdf/2403.14554">Gaussian frosting paper</a>)</em></figcaption></figure>
<p>Thickening the frosting layer around these fuzzy regions simply allows for more Gaussians to capture fine-grained details:</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-at-eccv-2024-building-a-foundation-part-i/image_181451639d591e904256224afdac47d4_1000.webp" alt="In constrast to normal 3DGS, Gaussian Frosting allows to render fine details meticulously (source: Gaussian frosting paper)"><figcaption><em>In constrast to normal 3DGS, Gaussian Frosting allows to render fine details meticulously (source: <a href="https://arxiv.org/abs/2403.14554">Gaussian frosting paper</a>)</em></figcaption></figure>
<p>Furthermore, the authors are able to keep the frosted Gaussians within the frosting layer during optimization as well as when deforming the base mesh. This allows to use traditional mesh editing tools in e.g. Blender to edit or composite scenes with great rendering quality, even for complex volumes or fuzzy materials. One such example can be seen here underneath. Who thought Buzz Lightyear would be able to ride a giant kitten in the classic 3DGS bike scene?</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-at-eccv-2024-building-a-foundation-part-i/gaussian-frosting-composition_33c3363054ff16bba623fac8159b0909_800.jpg" alt="Scene composition with deformable meshes using Gaussian Frosting. The resulting composited scene is of high quality and can properly deal with fuzzy surfaces and occlusions (source: Gaussian frosting paper)"><figcaption><em>Scene composition with deformable meshes using Gaussian Frosting. The resulting composited scene is of high quality and can properly deal with fuzzy surfaces and occlusions (source: <a href="https://arxiv.org/abs/2403.14554">Gaussian frosting paper</a>)</em></figcaption></figure>
<blockquote>
<p><em>For those familiar with Blender, the Gaussian frosting authors provide a Blender add-on to play around with Gaussian Frosting! You can find it <a href="https://github.com/Anttwo/sugar_frosting_blender_addon/">here</a>.</em></p>
</blockquote>
<hr>
<h2>Diffusion</h2>
<p><a href="https://arxiv.org/abs/2112.10752">Latent Diffusion</a> proved to be a game-changer for conditioned 2D image generation back in 2021. Moving the diffusion process to the latent space allowed to exploit the potential of image denoising more efficiently. I would like to highlight three fairly different papers using diffusion for generation directly. They have one common factor: the results are an impressive tribute to the capabilities of latent diffusion models nowadays.</p>
<h3><em>CosHand</em>: Controlling the world by the sleight of hand</h3>
<p>Diffusion models most likely have some understanding of the interaction of objects with the world, simply because of the vast amount of data models such as <a href="https://github.com/efzero/latent-diffusion?tab=readme-ov-file">Stable Diffusion</a> have seen during training. <strong><a href="https://cv.cs.columbia.edu/sruthi/coshand/index.html">CosHand</a></strong> is an example of a “world model”. <strong>World models predict the future conditioned on past observations and an action</strong>. This setup is quite different from normal text- or image-conditioned diffusion models. World models should ensure consistency across the input and predicted image, and accurately model physical behavior of objects with their surrounding environment.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-at-eccv-2024-building-a-foundation-part-i/coshand_27283702b9f3d4b1dc0898c2dc54d7c0_800.jpg" alt="CosHand makes use of SAM to obtain a large dataset of combinations of hand masks and images, on which a latent diffusion model with strong physical priors can be finetuned (source: CosHand paper)"><figcaption><em>CosHand makes use of SAM to obtain a large dataset of combinations of hand masks and images, on which a latent diffusion model with strong physical priors can be finetuned (source: <a href="https://arxiv.org/pdf/2408.07147">CosHand paper</a>)</em></figcaption></figure>
<blockquote>
<p><em>CosHand models hand-environment interaction and aims to predict the change in position, appearance or geometry of an object caused by hand motions, seen from a single view. Given an input image X_t, the hand mask in that image h_t and a future hand mask - the ‘hand query’ - h_(t+1), it predicts how the image would change because of the hand motion.</em></p>
</blockquote>
<p>Starting from a <strong>pre-trained Stable Diffusion model to leverage its strong priors</strong>, CosHand conditions on encoded versions of Xt, ht and ht+1, as well as on a CLIP embedding of Xt during finetuning. The latter conditioning ensures semantic consistency between the input and output image. Hand masks are generated with - you’ll never guess - Segment Anything, and model inputs and outputs are sampled from the <a href="https://www.qualcomm.com/developer/software/something-something-v-2-dataset">SomethingSomethingv2</a> video dataset.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-at-eccv-2024-building-a-foundation-part-i/coshand-generalisation_f68fa8d772a216563b4ff917addfa28d_1000.jpg" alt="CosHand has a sense of depth, and is able to generalize to unseen but similar mechanisms such as robot arms (source: CosHand paper)"><figcaption><em>CosHand has a sense of depth, and is able to generalize to unseen but similar mechanisms such as robot arms (source: <a href="https://arxiv.org/pdf/2408.07147">CosHand paper</a>)</em></figcaption></figure>
<p>The results are - least to say - fascinating. CosHand is able to predict the impact of a hand motion on a scene. It also has a sense of depth, as illustrated on the left of the figure here above. Even more fascinating is the fact that it is also able to do the same thing for robot arms; it clearly has some understanding about physical concepts at an abstract level beyond its dataset! CosHand is an excellent example of unlocking strong physical priors from diffusion models.</p>
<h3><em>Generative Camera Dolly</em>: It’s all about perspective</h3>
<p>At the end of November 2023, Stability AI brought <a href="https://stability.ai/news/stable-video-diffusion-open-ai-video-model">Stable Video Diffusion (SVD)</a> for image-to-video synthesis into the world. <strong><a href="https://gcd.cs.columbia.edu/">Generative Camera Dolly (GCD)</a></strong> operates by the same principle as CosHand: finetuning a diffusion model that was pre-trained on large scale - in Dolly’s case video - data. Given a static, single-view video of a scene, GCD is able to imagine what the scene would look like from other different perspectives. The output is a <strong>video-to-4D transformation</strong>, generating a <strong>video as if the camera was moving along the scene</strong> - just as a camera dolly.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-at-eccv-2024-building-a-foundation-part-i/dolly_b8ddac1d911617a1144c1703d6dbafb9_800.jpg" alt="Generative Camera Dolly is a Stable Video Diffusion model finetuned to incorporate explicit control over camera movement during video generation (source: GCD paper)"><figcaption><em>Generative Camera Dolly is a Stable Video Diffusion model finetuned to incorporate explicit control over camera movement during video generation (source: <a href="https://gcd.cs.columbia.edu/GCD_v4.pdf">GCD paper</a>)</em></figcaption></figure>
<blockquote>
<p><em>The authors condition a pre-trained SVD model on the relative camera viewpoint difference, captured by a series of rotation matrices R_t and translation matrices T_t. This allows for explicit control over camera movement during video generation.</em></p>
</blockquote>
<p>A desired transformation can be specified as e.g. <em>up 15°, right 60° and back 10m.</em> Upon generating this camera movement, the model is still capable of <strong>recovering full scene layout and reconstructing temporally hidden objects</strong> despite occlusions. It also correctly imagines the <strong>continued motion of objects in a scene</strong> as the camera moves.</p>
<p>Cool video examples can be found on the <a href="https://gcd.cs.columbia.edu/">GCD Project Page</a>, be sure to go give it a look!</p>
<h3><em>FMBoost</em>: Go with the flow</h3>
<p>Diffusion models generally still suffer from slow inference and high computational resource usage, especially for high resolution image generation. Apart from (latent) diffusion processes, <strong>another paradigm for image generation has gained some attraction lately:</strong> <a href="https://arxiv.org/abs/2210.02747">flow matching</a>. Flow matching is a theoretically quite heavy concept, based on Continuous Normalizing Flows. Flow matching aims to construct a <strong><em>flow ϕ</em> that maps an initial distribution</strong> <em><strong>p</strong></em><em>0</em>** (for image generation a standard Gaussian distribution)<strong>to another, possibly more complex distribution <em>p1</em></strong> (the distribution of the image space):</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-at-eccv-2024-building-a-foundation-part-i/flow-matching_d969e01689a6ecaf390745dbab074bdc_800.jpg" alt="High-level overview of flow matching: a flow ϕ allows to construct a mapping from an initial distribution p0 to another, more complex distribution p1"><figcaption><em>High-level overview of flow matching: a flow ϕ allows to construct a mapping from an initial distribution p0 to another, more complex distribution p1</em></figcaption></figure>
<blockquote>
<p><em>ϕ is the solution of the differential equation dx = u_t(x)dt, with u_t(x) a time dependent vector field. Flow matching essentially found a regression objective to estimate the vector field u_t(x) from sampling from the target distribution p_1. The flow ϕ can then be found using highly optimized ODE solvers, making flow matching really efficient for image generation as it does not require many stochastic denoising steps such as is the case with diffusion models. However, this comes at the cost of flow matching models being less expressive and diverse.</em></p>
</blockquote>
<p>FMBoost combines the best of both worlds: it leverages latent diffusion models in a small latent space to generate diverse samples at a small resolution. Thereafter, flow matching is used to efficiently upsample the latent code to a higher dimensional latent space, from which a high resolution image can be decoded with a pre-trained VAE decoder:</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-at-eccv-2024-building-a-foundation-part-i/fmboost_0c352e3675ce62880532e1997c2c98c9_800.jpg" alt="FMBoost combines the strength of both Latent Diffusion Models (LDM) and Flow Matching (the CFM module) for efficient high resolution image generation. The latent decoder is a pre-trained VAE decoder."><figcaption><em>FMBoost combines the strength of both Latent Diffusion Models (LDM) and Flow Matching (the CFM module) for efficient high resolution image generation. The latent decoder is a pre-trained VAE decoder.</em></figcaption></figure>
<p>The Coupling Flow Matching module (CFM module) is trained to efficiently transport the low resolution latent code to a high resolution one. Diffusion in the low-dimensional latent space ensures sufficient diversity in the generated images. The result is a plug-and-play method for boosting the resolution of latent diffusion models in an efficient manner. It is really neat to see the difference between the low resolution image resulting from the latent code from the LDM, and the high resolution after flow matching:</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/datameister-at-eccv-2024-building-a-foundation-part-i/upsampling_a319fa09a0d6324641cb457bf02eb624_800.jpg" alt="Difference between the original image resulting from the low resolution LDM and the high resolution image after several upsampling steps using a chain of CFM modules."><figcaption><em>Difference between the original image resulting from the low resolution LDM and the high resolution image after several upsampling steps using a chain of CFM modules.</em></figcaption></figure>
<hr>
<p><strong>That’s it for this first ECCV blogpost!</strong> Hope the stuff from here above could fascinate you as much as it did fascinate us. Every corner of the 3D AI scene is moving at an unprecedented speed, that is for sure. In the next blogpost, a brand new colleague of ours - and expert in the field - will take you through more fascinating ECCV work on 3D object generation and representation. Stay tuned 😎</p>
]]></content:encoded>
    </item>
    <item>
      <title>Celebrating our first year</title>
      <link>https://datameister.ai/blog/celebrating-our-first-year/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/celebrating-our-first-year/</guid>
      <pubDate>Mon, 15 Jul 2024 14:39:52 GMT</pubDate>
      <dc:creator>Ruben Verhack</dc:creator>
      <category>Behind the Scenes</category>
      <description>Datameister marks its first anniversary with a growing team and an evening of drinks, BBQ and music at Zebrabeach in Ghent.</description>
      <content:encoded><![CDATA[<figure class="post-figure"><img src="https://datameister.ai/blog/celebrating-our-first-year/dsc04852_9554e5832766c3e52af205911fe20332.jpg" alt="Celebrating our first year"></figure>
<p>We made it! First year of Datameister is already behind us. We founded Datameister in June 2023, fast-forward one year, and here we are! There are many things that I would like to share. For example, our team is expanding to 7 people in the coming months. We’ve been extremely lucky to gather a lot of top notch talent. Liam already introduced himself, we’ll be introducing others soon too. Additionally, we’ve been cooking up some exciting stuff behind the scenes.</p>
<p>However, I’m going to keep this one short, but I wanted to share our photos of our 1-year celebration at Zebrabeach, Ghent.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/celebrating-our-first-year/dsc04852_9554e5832766c3e52af205911fe20332_800.jpg" alt="Meet the team! (Obviously missing Pieter who’s currently hiking in Norway)Photographer: Kegels Photo | Copyright: © 2024 Kegels Photo, all rights reserved."><figcaption><em>Meet the team! (Obviously missing Pieter who’s currently hiking in Norway)<br>Photographer: Kegels Photo | Copyright: © 2024 Kegels Photo, all rights reserved.</em></figcaption></figure>
<p>We invited our friends and colleagues from the tech scene around Ghent to join us for drinks, BBQ and tunes by DJ Mixmonster Menno. Thanks to <a href="https://www.instagram.com/janne.kgls/">Janne Kegels</a> for the photos!</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/celebrating-our-first-year/dsc04844_e57568b5d53d21f29617451cc95af588_800.jpg" alt="Photographer: Kegels Photo | Source: © 2024 Kegels Photo, all rights reserved."><figcaption><em>Photographer: Kegels Photo | Source: © 2024 Kegels Photo, all rights reserved.</em></figcaption></figure>
<p>Finally, I want to give a shout-out to <a href="https://www.bakingwithastrid.be/nl/Baking-With-Astrid">Baking with Astrid</a> for the delicious Datameister-branded mini-cupcakes.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/celebrating-our-first-year/dsc04974_d836235070830103d48b04de44d6c82e_800.jpg" alt="Photographer: Kegels Photo | Copyright: © 2024 Kegels Photo, all rights reserved."><figcaption><em>Photographer: Kegels Photo | Copyright: © 2024 Kegels Photo, all rights reserved.</em></figcaption></figure>
]]></content:encoded>
    </item>
    <item>
      <title>Reflecting on the first AI for Digital Arts/Entertainment/Game Dev meetup</title>
      <link>https://datameister.ai/blog/reflecting-on-the-first-ai-for-digital-artsentertainmentgame-dev-meetup/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/reflecting-on-the-first-ai-for-digital-artsentertainmentgame-dev-meetup/</guid>
      <pubDate>Thu, 11 Apr 2024 15:16:16 GMT</pubDate>
      <dc:creator>Ruben Verhack</dc:creator>
      <category>Events</category>
      <description>A recap of the first AI for Digital Arts, Entertainment and Game Dev meetup in Ghent, where techies and creatives explored the future of game development.</description>
      <content:encoded><![CDATA[<figure class="post-figure"><img src="https://datameister.ai/blog/reflecting-on-the-first-ai-for-digital-artsentertainmentgame-dev-meetup/datameister-20240410-7_956b4066797dc1f28f17194e63f42bf8.jpeg" alt="Reflecting on the first AI for Digital Arts/Entertainment/Game Dev meetup"></figure>
<h2>The event</h2>
<p>Last night, Datameister, <a href="https://www.digitalartsandentertainment.be/">Howest Digital Arts &amp; Entertainment</a> and <a href="https://www.flandersgamehub.be/">Flanders Game Hub</a> organized the first event of the <a href="https://www.meetup.com/nl-NL/ai-in-digital-arts-game-development-and-entertainment/">AI in digital arts game development and entertainment BE</a> meetup community. It was hosted in the beautiful event space underneath our offices at the <a href="https://www.boldhouse.space/">Boldhouse</a> in Ghent, BE. It was great to see so much enthusiasm and attendance to the event. Full House!</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/reflecting-on-the-first-ai-for-digital-artsentertainmentgame-dev-meetup/datameister-20240410-7_2edf7e03e3b11d83f92757bec33ef1e4_800.jpg" alt="Full house at the Boldhouse!"><figcaption><em>Full house at the Boldhouse!</em></figcaption></figure>
<p>The goal is <strong>to connect people ranging from AI algorithm techies to AI-powered creatives</strong>. Both ends are really looking at each other for help since there is so much noise at the moment. It feels like the entire playing board has been completely shaken up. The techies wonder what to make, while the creatives wonder what is possible. We believe that those who take the lead in navigating this new future will be the ones who ultimately own it.</p>
<h2>The people</h2>
<p>I was honestly pleasantly surprised by the creative talent that was present. In general, there is always more talent in Belgium than you would expect. People came from far and beyond and were showcasing their experiments to each other on their laptops. That really brought a smile to my face.</p>
<p>It was a nice mix of people, and I have to give a shoutout to <a href="https://www.digitalartsandentertainment.be/page/133/Research">Howest DAE Research</a> for being the ideal bridge between the creatives and techies. Researchers and teachers were all present to share their findings and look for collaborations.</p>
<p>Apart from the creatives, it was great to see other industries present. People who work on photogrammetry and 3D assets in industrial settings, work with 3D people developing their new AI products in stealth mode, or other people working on all kinds of simulations and training environments in AR/VR.</p>
<h2>The talks</h2>
<p><a href="https://www.linkedin.com/in/glenn-van-waesberghe-424620172/">Glenn Van Waesberghe</a> (DAE Research) gave a great overview of how text-to-image works, not shying away from technical details like the embedding spaces and diffusion, something I really appreciate because I don&#39;t want to be fluffy about AI in this community. Give me the cold, hard, technical details. He concluded his talk with a comprehensive analysis of all the available tools, evaluating them on various aspects. Glenn shared his slides <a href="https://drive.google.com/file/d/1lEXIFN7JsCPb4_UREEm70Rivb52GON7y/view?usp=sharing">here</a>.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/reflecting-on-the-first-ai-for-digital-artsentertainmentgame-dev-meetup/datameister-20240410-6_4defd02dba421aa643ec22514189c0f2_800.jpg" alt="Glenn presenting text-to-image: deep dive"><figcaption><em>Glenn presenting text-to-image: deep dive</em></figcaption></figure>
<p><a href="https://www.linkedin.com/in/voidwalkerdotcom/">Vince Buyssens (Starhaven)</a> showed us how he has been successfully applying AI for big international campaigns and discussed how it was received. He specializes in supplying the change management necessary for companies and all the nuances of how to apply new techniques to broaden your toolbox but still respect your audience and keep humanity relevant within the AI revolution. He was kind enough to share <a href="https://www.canva.com/design/DAGCAzAABLA/r_FLWenUciK6RY5VOU1usQ/view">his presentation slides</a>. Check out his videos on which he collaborated: <a href="https://youtu.be/jFVezT4mznU?si=FXMFFF0dwsLO7gKR">“Welcome to the Latent Space”</a>, <a href="https://youtu.be/-VrOv982U4A?si=bzuGAI2o1wMP027k">“Under Armour - Anthony Joshua - Forever is made now”</a>.</p>
<p>Me, Ruben, gave a talk on <a href="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering">AI-driven breakthroughs in image-based rendering</a> which I already wrote extensively about in this <a href="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering">blog post</a>.</p>
<h2>My reflections</h2>
<p>First of all, I found it extremely interesting how tools, which are still very limited in quality or creation length, can be put together to create something great. It’s a great <strong>new type of creativity that emerges</strong>, which often reminds me of the 80s and 90s aesthetics that also tried to be as creative with shitty graphics as possible but gave rise to 8-bit art etc. It itself becomes an art.</p>
<p>Another trend I am seeing is that the modalities on which creatives will work in <strong>the future will be volumetric</strong>; it won’t just be images and video. Some studios already treat video productions a lot more like 3D environment productions than plain 2D video productions. For this, NeRFs and Gaussian Splats will become great intermediate formats that bridge this camera-captured data with 3D worlds. We will work in media in a different modality akin to radiance fields in a more volumetric environment, and this will require radically new tools. This is exciting for a company like ours that specializes in spatial AI.</p>
<p>What I learned was how creatives now have access to <strong>open source</strong>, and how open source is so important to creatives. The idea that this technology should not be only dominated by Adobe and the likes is actually a stance on open source that I never thought of. For me, as a techie, I always assumed open source was something us techies only cared about. Especially <a href="https://github.com/comfyanonymous/ComfyUI">ComfyUI</a> caught my attention.</p>
<p>Last observation was that <strong>creatives seem to care a lot more about the impact on their industry</strong> than I have ever given thought of. And with a lot, I mean A LOT. The criticism and even boycots company face when experimenting with AI is mind-blowing. They need to deal with inertia a lot more than us techies need to deal with. It opened my eyes to what kind of techno-optimistic bubble I live in.</p>
<h2>Next steps</h2>
<p>This event placed a significant emphasis on text-to-image generation, image in- and out-painting, and generative video, along with our discussion on radiance fields, including Gaussian Splatting and NeRFs. I am really looking forward to discovering what other topics will emerge. I am particularly excited about those that involve 3D pose, animations, 3D world design, and visual effects.</p>
<p>We already set the date for the next event, being June 5th. More details will follow, follow us on our <a href="https://www.meetup.com/nl-NL/ai-in-digital-arts-game-development-and-entertainment/">meetup community page</a>.</p>
]]></content:encoded>
    </item>
    <item>
      <title>AI-Driven Breakthroughs in Image-Based Rendering: Light Fields, SMoE, Gaussian Splatting, NeRFs and beyond</title>
      <link>https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/</guid>
      <pubDate>Tue, 13 Feb 2024 10:41:27 GMT</pubDate>
      <dc:creator>Ruben Verhack</dc:creator>
      <category>Lab</category>
      <category>3D Generation &amp; Reconstruction</category>
      <description>An overview of AI-driven advances in image-based rendering: light fields, SMoE, Gaussian Splatting and NeRFs.</description>
      <content:encoded><![CDATA[<figure class="post-figure"><img src="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/schermafbeelding-2024-02-08-091419_de052ce9b2983f6c46e74d2f0ea7cbfa.jpeg" alt="AI-Driven Breakthroughs in Image-Based Rendering: Light Fields, SMoE, Gaussian Splatting, NeRFs and beyond"></figure>
<p>In a previous life, I was working at TU Berlin and Ghent University in the <strong>exciting field of video coding and image-based rendering</strong>. I had the opportunity to meet with many brilliant minds at conferences, MPEG and JPEG meetings as well as industry meetups at Google, Netflix and Disney Research.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/image_91877825d5a7d5364bcb2853bc9c9ffe_800.webp" alt="Author with the original inventors of JPEG"><figcaption><em>Me (left) - starstruck - meeting the original JPEG inventors at the JPEG meeting celebrating 25 years of JPEG (Turin, Italy). Source: Image by the author.</em></figcaption></figure>
<p>Although image-based rendering has been around for decades, it wasn’t until recently that a big revival happened. <strong>Image-based rendering was considered impractical for many reasons, until deep learning and diffusion models provided solutions to some of the longstanding issues.</strong></p>
<blockquote>
<p>In this article, I will provide an overview of the recent advances in AI-driven image-based rendering field based on my personal experience and background. Additionally, I will discuss my contributions to the field. This is definitely more of technical longread. Hope you enjoy.</p>
</blockquote>
<h2>What is image-based rendering?</h2>
<p>Image-based rendering is the field of rendering in which new images are distilled from a set of captured images. It typically involves by interpolating, and tracing light rays in a space. The captured images serve as snapshots of the light rays in the space.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/image_6094a8b193b012060851fbe80a3d3c1c_800.webp" alt="Illustration of synthesized cameras vs reference cameras"><figcaption><em>Illustration in which the yellow camera viewpoint is synthesized based on the pixel data entering the blue real cameras. Source: Image by the author.</em></figcaption></figure>
<p><strong>Why is this useful?</strong> Image-based rendering allows creating novel views from a scene <strong>without knowing anything about the geometry of the scene.</strong> Reverse-engineering the geometry (meshes, texture, and reflective properties) from a scene is notoriously difficult and an underdetermined problem. Think about smoke, reflections, and translucent objects. It easily gives rise to the <strong><a href="https://en.wikipedia.org/wiki/Uncanny_valley">uncanny valley</a></strong> problem.</p>
<p>On the other hand, there are practical problems as well in image-based rendering when the geometry and its properties are unknown in order to generate new images:</p>
<p>Many images need to be captured in order for new images to be able to be generated. This leads to practical data acquisition problems, as well as storage and streaming issues.</p>
<p>Occlusions, one can never see behind objects.</p>
<h2>Where does AI come into play?</h2>
<p>The naive way to implement the rendering is by using ray-tracing to trace each pixel back to the reference views. Over the years, this has been extended by incorporating more and more intelligent view interpolation techniques. However, the modern way is using an intermediate AI model that is constructed based on the reference viewpoints. Such a model can then be queried at the desired viewing angles.</p>
<blockquote>
<p><strong>The primary area of innovation lies in designing these view models that can grasp the essence of a scene to enable reconstructing views at high fidelity.</strong> Additionally, these models will be required to have properties that are more concerning applications, such as the ability to relight a scene or efficiently stream parts of a scene over a network. The applications will thus be important in deciding what type of model will be preferred.</p>
</blockquote>
<h3>Applications</h3>
<p>Image-based rendering has many applications which all share the desire to take a scene or an object from the real world and visualize it again in a virtual setting.</p>
<h4>1. Immersive applications</h4>
<p>The most natural application is in a VR/AR experience in which image-based rendering techniques allow a user to experience a strong immersive feeling due to the high photorealistic light effects, as well as having all possible viewing angles at their disposal giving them 6-degrees of freedom.</p>
<p>It effectively fulfills the potential of virtual reality using camera-captured content. This represents a significant improvement over the restricted range of motion found in current 360-degree videos. There are many possible applications, e.g. entertainment (remote events), telemedicine (remote robot surgery), remote visits to real-estate, cultural heritage, and others.</p>
<p>The model will be required to be streamable efficiently across networks. Ideally, it should have all the features found in typical MPEG data streams, such as random access or different layers of detail.</p>
<h4>2. 3D assets for virtual productions</h4>
<p>A less obvious, but extremely important new application is the inclusion of scanned objects and spaces to be reused in virtual productions, VFX, video production, and gaming. This is where I truly believe that the need for a compact and versatile data models arises.</p>
<p>This is the area that has seen the most activity over the last few years. Engines such as Unreal and Unity currently have plugins that allow you to import view generating models like NeRFs and Gaussian Splats right into your 3D world. You can then integrate other 3D objects like meshes with your camera-captured content. Watch the video below and you will instantly understand why this is a game changer for productions.</p>
<p><em>Video showing the production process of incorporating a mountain top camera-captured by a drone into a virtual production. Source: <a href="https://www.youtube.com/@badxstudio">Bad Decisions Studio</a></em></p>
<p>For these applications, other requirements may be imposed on view-point generating models, e.g. being able to edit or to relight scenes or objects.</p>
<h3>Mathematical models of light</h3>
<p>Let’s first get back to the (mathematical) basics. Several mathematical models have been introduced to model light over the last century. All relate one way or another to the <strong>plenoptic function.</strong> The plenoptic function is a mathematical model that describes all the light rays in a space at a certain time. It captures all possible visual information about a scene at every point in time and encompasses various attributes like position, direction, color, intensity, etc. <strong>Different models have been introduced that all relate to the plenoptic function: light fields, radiance fields, ray-space representation.</strong> All of the models are different parametrizations or simplifications of the plenoptic function.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/image_2247209ae8c5923c0a431ed6e706d0f3_800.webp" alt="The full plenoptic function. The Polarization, Bounce and Phase arguments are typically left out for simplification. Time is only relevant for non-stationary scenes (Source: History of Neural Radiance Fields)."><figcaption><em>The full plenoptic function. The Polarization, Bounce and Phase arguments are typically left out for simplification. Time is only relevant for non-stationary scenes (Source: <a href="https://radiancefields.com/history-of-neural-radiance-fields">History of Neural Radiance Fields</a>).</em></figcaption></figure>
<p>For example, the simplified <strong>4D</strong> <strong>light field</strong> contains information about both the intensity and direction of light rays at every point in space. By capturing and processing this vast amount of data, we can recreate realistic images with accurate lighting effects and depth perception. Light fields are used in photography and imaging technologies, like light field cameras (e.g., <a href="https://en.wikipedia.org/wiki/Lytro">Lytro</a>), which capture information about the light direction as well as its intensity. This allows for post-capture refocusing, changing the perspective, and precise depth-based filtering.</p>
<p>It is called the 4D light field because it reduced the plenoptic function into 4 main parameters. There are different parametrizations possible (see below) in which the first (a) is the most common, the parallel two plane representation. Each ray of light goes through an image plane (s,t) and travels through a camera plane (u,v), assuming that the cameras are placed on a single plane.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/image_4a87f78f0dd43b4c0cfde13c48435121_800.webp" alt="Source: Changyin Zhou, &amp; Nayar, S. K. (2011). Computational Cameras: Convergence of Optics and Processing. IEEE Transactions on Image Processing, 20(12), 3322–3340."><figcaption><em>Source: <a href="https://doi.org/10.1109/TIP.2011.2171700">Changyin Zhou, &amp; Nayar, S. K. (2011). Computational Cameras: Convergence of Optics and Processing. IEEE Transactions on Image Processing, 20(12), 3322–3340.</a></em></figcaption></figure>
<p>The 4D light field is a convenient mathematical model, but does not always transfer easily to practical and cost-efficient camera rigs, as I will discuss in the next section.</p>
<p>Alternatively, free viewpoints camera setups are possible (or even just moving a single camera in time), which requires the additional complexity of <a href="https://en.wikipedia.org/wiki/Structure_from_motion">structure-from-motion</a> (SfM) / photogrammetry techniques to situate the pixel values in the 3D space. For example, Gaussian Splatting relies heavily on SfM for the initialization of it’s kernels.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/image_7e0fc1f5652d11f825015498e9f756cf_800.webp" alt="Structure-from-motion: Finding correspondences between camera viewpoints to locate the pixel values in the physical 3D world. A more flexible approach compared to the constrained 4-D light field. Source: https://towardsdatascience.com/a-comprehensive-overview-of-gaussian-splatting-e7d570081362"><figcaption><em>Structure-from-motion: Finding correspondences between camera viewpoints to locate the pixel values in the physical 3D world. A more flexible approach compared to the constrained 4-D light field. Source: <a href="https://towardsdatascience.com/a-comprehensive-overview-of-gaussian-splatting-e7d570081362">https://towardsdatascience.com/a-comprehensive-overview-of-gaussian-splatting-e7d570081362</a></em></figcaption></figure>
<h3>Capturing light fields</h3>
<p>I will briefly discuss camera setups for light field capturing, mainly to give insight on why light fields have not been a practical solution for a long time. Below you can see a prototype for one of Lytro’s production-level light field camera array. Needless to say, this is extremely costly to rent, run and to provide storage for. Each camera array requires a server rack to capture video.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/image_86f119e3999f2cfd77ddc44de5b1de3d_800.webp" alt="Adapted from RoadToVR - Exclusive: Lytro Reveals Immerge 2.0 Light-field Camera with Improved Quality, Faster Captures."><figcaption><em>Adapted from <a href="https://www.roadtovr.com/exclusive-lytro-reveals-immerge-2-0-light-field-camera-improved-quality-faster-captures/">RoadToVR - Exclusive: Lytro Reveals Immerge 2.0 Light-field Camera with Improved Quality, Faster Captures.</a></em></figcaption></figure>
<p>In contrast, you can find my poor man’s version that I built at IDLab-MEDIA - UGhent below. Each panel consists of 9 Raspberry Pi minicomputers with the RPI v2 cameras. Each panel was laser cut and assembled using standard easy to find tools. The cost of one panel was sub-1000 EUR, which was my assigned budget.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/image_9d799af6ecb5a99d3d9c3cc382dead13_800.webp" alt="DIY Raspberry Pi-based light field camera array. The German word “Kabelsalat” is very apt here. Source: Image by the author."><figcaption><em>DIY Raspberry Pi-based light field camera array. The German word “Kabelsalat” is very apt here. Source: Image by the author.</em></figcaption></figure>
<p>Each panel would thus produce 9 photos/videos that were spatially displaced. The external parameters (camera position/angle) and intrinsic parameters (lens correction) were co-optimized using multi-cam optimization.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/image_d931ae5a1c22426882cb3b85f10ca2e1_800.webp" alt="Result of one panel: 9 viewpoints from a single camera plane. Source: Image by the author."><figcaption><em>Result of one panel: 9 viewpoints from a single camera plane. Source: Image by the author.</em></figcaption></figure>
<p>If you were to apply naive light field rendering by ray tracing through these nine images, you can achieve a result as shown below. The camera position can be slightly changed, and some refocusing is possible by adjusting a virtual focal plane. However, the level of quality remains low when using 9 cameras with relatively large gaps in between. However, it does give you an impression of where we want to go.</p>
<iframe width="100%" height="420" src="https://www.youtube.com/embed/lgtOtBLUqrE" title="YouTube video player" frameborder="0" allow="accelerated-rendering; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe><p><em>Naive light field rendering applied to my poor man’s light field camera rig.<br>Source: video by the author. <a href="https://youtu.be/lgtOtBLUqrE">Full video here</a></em></p>
<h2>Novel AI-driven image-based rendering techniques</h2>
<p>I will now discuss four recent advancements in image-based rendering that have been made possible by recent AI breakthroughs. For more detailed information on the history of this field prior to 2017, please refer to my <a href="http://phd.rubenverhack.be">PhD thesis</a>.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/image_73451c373b02e7b0384a6452b6845bb8_800.webp" alt="Non-exhaustive overview of continuous representations of camera-captured scenes, separated in Gaussian-based methods and whole-scene methods. Source: Image by the author."><figcaption><em>Non-exhaustive overview of continuous representations of camera-captured scenes, separated in Gaussian-based methods and whole-scene methods. Source: Image by the author.</em></figcaption></figure>
<h3>SMoE (2017)</h3>
<p>Between 2014 and 2020, I published a number of papers that introduced <strong>Steered Mixture-of-Experts (SMoE)</strong>, and <a href="http://phd.rubenverhack.be">eventually published a book on the matter</a>. I had the privilege and pleasure to work for an MPEG grandmaster, Prof. Thomas Sikora, who was thrilled about the idea <strong>of abandoning the concept of pixels all together</strong>. Initially, the method was meant as a <strong>continuous representation for images and videos.</strong> Everything was modelled by one large <strong>Gaussian Mixture Model (GMM)</strong>. There would just be more Gaussians where more detail was required.</p>
<p>The Gaussians - called ‘kernels’ - would span over spatial directions and in time, thus <strong>replacing the pixel as the building block of imagery</strong>. A single Gaussian thus represented a single blob of color that had a spatial and a temporal extend. The reconstruction is performed by taking the most probable pixel luminance at a certain location. This is given by the expectation of the posterior distribution given the location, which leads the Gaussians to work together in a <strong>Mixture-of-Experts (MoE)</strong> fashion. MoEs approximate a continuous function by combining a set of experts that are responsible for a part of the total function. In this case, each kernel is responsible for modeling a single gradient of a region in an image.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/image_e3772d259e03a3cda4f273405c8170cd_800.webp" alt="A detailed example on a 32x32 pixel image patch. These 1024 pixels were represented by 10 Gaussian kernels, each representing one localized gradient. Comparison to JPEG is at same bitrate. Source: Image by the author."><figcaption><em>A detailed example on a 32x32 pixel image patch. These 1024 pixels were represented by 10 Gaussian kernels, each representing one localized gradient. Comparison to JPEG is at same bitrate. Source: Image by the author.</em></figcaption></figure>
<figure class="post-figure"><img src="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/image_9454642af3bce5fc37df1378492ce88a_800.webp" alt="An example of mean estimated reconstructions of a 128x128 image from the dataset. Original (left) followed by models with 25, 100, 250, 750, and 2000 components, i.e. ranging from 1 kernel covering ±655 to ±8 pixels on average. Source: Image by the author."><figcaption><em>An example of mean estimated reconstructions of a 128x128 image from the dataset. Original (left) followed by models with 25, 100, 250, 750, and 2000 components, i.e. ranging from 1 kernel covering ±655 to ±8 pixels on average. Source: Image by the author.</em></figcaption></figure>
<p>It was soon realized that this method could be extended to any dimensional imagery, thus any light model. <strong>This was a huge breakthrough, it meant that this could give rise to a methodology that could modelling, coding, decoding, and render: images, videos, <a href="https://ieeexplore.ieee.org/abstract/document/8784272/">light fields, light field video</a>, and even <a href="https://ieeexplore.ieee.org/abstract/document/8553065?casa_token=xSqGJcEF9bgAAAAA:JLAyCQP0guKHmnyM-fUGCjC9CPth7FVx_u-sh4py5jSofxQNIFmBVGOURhZFrqe67ijH3Hx4">360-degree content natively</a>.</strong> It has the major advantage that complicate redundancy-reducing methods, typically present in MPEG technologies, do not have to be introduced (e.g. motion compensation using motion vectors).</p>
<blockquote>
<p><strong>Basically, one Gaussian kernel represents one bundle of light in space. It has an orientation and an extend through space and time.</strong></p>
</blockquote>
<p>A SMoE reconstruction is exemplified below using 9,000 kernels instead of the original 41 million pixels. This means that there is approximately 1 kernel for every 5,000 pixels. In general, the development of this method was mainly focused on image compression rather than computer graphics, so bit-efficiency has always been a priority.</p>
<p>The light field is shown below as a video that goes through all the camera standpoints (taken with a Lytro lenslet camera). The video traverses through the camera from the top left to the bottom right.</p>
<p><video autoplay loop muted playsinline width="100%" preload="metadata"><source src="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/youtube-video-gif_ad88b18d13472e163b77da2ff2a5ff2f.mp4" type="video/mp4"></video></p>
<p><em>Left: original, Right: SMoE reconstruction. Source: Video by the author.</em></p>
<p>Below is an illustration of the 4D kernels of a crop of the above. Sadly, 4D is inherently difficult for us humans to wrap our heads around. However, the main key takeaway is that if you move your head left and right in a scene, a patch of color will move left or right relative to the distance of that patch of color in the scene. Same goes for moving your head up and down. This relative movement is what is visualized on the a1 and a2 dimensions below. The main observation is that kernels have an extent in all four dimensions. A kernel is thus responsible for a patch of color that can move from left to right or top and bottom based on the camera viewpoint.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/image_715deb60568195dc9ed222abd4a65a2d_800.webp" alt="Visualization of the 4 dimensions of the light field, i.e. the image dimension and the epipolar planes. Source: Image by the author."><figcaption><em>Visualization of the 4 dimensions of the light field, i.e. the image dimension and the epipolar planes. Source: Image by the author.</em></figcaption></figure>
<p>The rendering of such SMoE models was heavily improved by the works of Martijn Courteaux (UGent - IDLab-MEDIA). It allows for real-time rendering of light fields from any angle. Here’s one example based on only 9 images from one of my DIY light field camera array. Since the kernels find the correlation between the different viewpoints, they provide a smooth transition in between and even outside of the original camera plane.</p>
<p><video autoplay loop muted playsinline width="100%" preload="metadata"><source src="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/youtube-video-gif-1_18de20499f8e2c0f76a43d113b32e0cf.mp4" type="video/mp4"></video></p>
<p><em>Light Field rendering of a SMoE model. Source: Video by the author.</em></p>
<p><video autoplay loop muted playsinline width="100%" preload="metadata"><source src="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/youtube-video-gif-2_20881cac2c8f287295d90e925b4017a3.mp4" type="video/mp4"></video></p>
<p><em>Visualization of the kernels of the model. Source: Video by the author.</em></p>
<p>The issue with SMoE was that, although theoretically sound, there always remained a struggle to obtain near-lossless quality or ways of dealing with fine texture details. In my works, I mainly trained the GMMs by using the Expectation-Maximization (EM) algorithm. I even developed a method to scale this algorithm to accommodate hundreds of thousands of kernels on billions of pixels (I might write about that in a later post). <a href="https://ieeexplore.ieee.org/document/8456250">There have been follow-up methods published on how to better initialize and train the GMM using MSE-optimization using gradient descent.</a> This involved making the model differentiable, similar to Gaussian Splatting. This greatly improves image quality but broke the theoretical soundness that the model was not a pure Bayesian GMM anymore (for all that it&#39;s worth).</p>
<p>The same Martijn Courteaux (sitting in the back in the video) has worked on bringing the modeling and rendering of light fields using SMoE to a whole new level over the last few years. A sneak peak is included below:</p>
<p><em>Previewing some recent advances in SMoE-based rendering. Source: <a href="https://www.youtube.com/channel/UCGXhM_2VP6KJ43o2ztRTyUA">Martijn Courteaux</a> Youtube Channel .</em></p>
<p>I will discuss the current state of SMoE vs Gaussian Splatting in our wrapping-up section. But first, I will continue chronologically through the major breakthroughs.</p>
<h3>NeRF (2020)</h3>
<p>Neural Radiance Fields (NeRFs) and the subsequent research based on NeRFs, are whole-scene methods in which a single neural network captures the entire scene. The neural network maps the viewing angle onto the color output, providing a continuous representation of the entire scene.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/image_7b56befdd0090434c8e1bed4839633e6_800.webp" alt="Source: History of Neural Randiance Fields"><figcaption><em>Source: <a href="https://radiancefields.com/history-of-neural-radiance-fields">History of Neural Randiance Fields</a></em></figcaption></figure>
<p>The data that needs to be saved consists solely of the weights (and the architecture) of the trained neural network. The downside is that the whole set of weights is required to reconstruct even portions of the scene. This leads us to the main disadvantages of whole-scene NeRF methods: encoding and decoding complexity and memory requirements. There are no &quot;building blocks&quot; as each scene corresponds with training an entire neural net. Reconstruction corresponds to inferring the entire neural network.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/image_f5a6d52a73757a71091f33d996d69010_800.webp" alt="Source: https://www.matthewtancik.com/nerf"><figcaption><em>Source: <a href="https://www.matthewtancik.com/nerf">https://www.matthewtancik.com/nerf</a></em></figcaption></figure>
<p>The biggest advantage of NeRFs is that they have a complete knowledge of the scene, which can lead to much better image quality and fewer camera viewpoints necessary due to better generalization between image viewpoints.</p>
<p><em>NeRF reconstruction example. More examples on <a href="https://www.matthewtancik.com/nerf">https://www.matthewtancik.com/nerf</a> (source)</em></p>
<h3>Gaussian Splatting (2023)</h3>
<p>Recently, Gaussian Splatting has received much attention, and rightfully so. It is a Gaussian-based method similar to SMoE, but it addresses some of the persistent issues present with SMoE. The optimization of Gaussian Splatting parameters is MSE-based, similar to <a href="https://ieeexplore.ieee.org/document/8456250">extensions of SMoE</a>.</p>
<p>The main differences to SMoE are as follows:</p>
<p>The Gaussian kernels exist in the physical 3D coordinate space, whereas SMoE kernels exist in the camera-image-plane coordinate system. As such, they have a more explicit connection to the real geometry. Furthermore, this allows the Gaussians to be initialized better by using structure-from-motion, which greatly improves the optimization process to achieve an optimum quickly and efficiently.</p>
<p><a href="https://towardsdatascience.com/a-comprehensive-overview-of-gaussian-splatting-e7d570081362">Spherical Harmonics are used as the view-dependent color function</a> which provide more expressive local expert functions compared to the color gradients in SMoE. This has been key to achieve photo-realistic results.</p>
<p>Gaussian splatting benefits from a plethora of optimization possibilities, as it can be implemented as a rasterization method. As such, it benefits from decades of computer graphics advancements.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/image_8213cbb2d606e0a4c760ffe511869331_800.webp" alt="High-level comparison between SMoE and Gaussian Splatting. Source: image by the author."><figcaption><em>High-level comparison between SMoE and Gaussian Splatting. Source: image by the author.</em></figcaption></figure>
<p>Seemingly bikes make for great test cases in the field of view synthesis, since there are many small structures such as spokes and brake cables. Below is an illustration from a different bike scene modelled by Gaussian splatting.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/image_7caa8c691ffbbdb781f8dbc96e4059db_800.webp" alt="Source: the Hugging Face blog."><figcaption><em>Source: the <a href="https://huggingface.co/blog/gaussian-splatting">Hugging Face blog.</a></em></figcaption></figure>
<p>Similar to our SMoE example of a scene, an example is shown here which illustrates the quality of Gaussian Splatting in a similar scene, albeit recorded using a more higher end camera rig.</p>
<p><em>Source: <a href="https://www.plainconcepts.com/3d-gaussian-splatting">3D Gaussian Splatting at Plain Concepts</a>.</em></p>
<p>It is great to see a method reaching maturity that will definitely make a huge impact on virtual video productions and a variety of game production tools. Especially since it is not a black-box model, but there are building blocks that can be segmented, compressed, streamed... A lot of the paradigms of video coding are applicable to splats which is exciting.</p>
<p>For those who want more details. I would highly recommend reading the excellent <a href="https://towardsdatascience.com/a-comprehensive-overview-of-gaussian-splatting-e7d570081362">Comprehensive Overview of Gaussian Splatting</a> by <a href="https://yurkovak.medium.com/">Kate Yurkova</a>.</p>
<h3>ReconFusion (2023)</h3>
<p>I included ReconFusion as it clearly demonstrates the benefit of a technique that is purely deep-learning based. ReconFusion is basically the combination of NeRFs with diffusion, which is a rather novel architecture within deep learning that is especially good at generalizing to unseen data. This generalization translates to needing fewer original camera viewpoints as it &quot;inpaints&quot; the missing views based on prior image knowledge gathered by training on a large dataset of viewpoints.</p>
<p>Below you can see the comparison between regular NeRFs and the ReconFusion using diffusion priors. It is clear that ReconFusion requires much less initial camera viewpoints.</p>
<p><em>Source: <a href="https://reconfusion.github.io/">https://reconfusion.github.io/</a></em></p>
<h2>Wrapping up</h2>
<p>There are currently two new main paradigms in image-based rendering: the Gaussian-based methods and the whole scene deep-learning methods. Both have their pros and cons listed below.</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering/image_57acec2d5323a3fd77b1f9f1001606c3_800.webp" alt="Comparison between Gaussian-based methods (left) and whole scene NeRF methods (right). Source: image by the author."><figcaption><em>Comparison between Gaussian-based methods (left) and whole scene NeRF methods (right). Source: image by the author.</em></figcaption></figure>
<p>I strongly believe that when it comes to creating efficient streamable camera-captured VR content, Gaussian kernel-based methods are the clear choice. While NeRFs can be utilized as 3D assets in virtual productions, Gaussian splats can serve the same purpose just as effectively. Additionally, Gaussian splats offer the advantage of being loosely connected to the underlying geometry. This opens up possibilities for editing these 3D assets in various ways.</p>
<p>NeRFs can still be employed in scenarios with restricted viewpoints and a greater need for image priors. The methods are not mutually exclusive either. It may be logical to initially generate a NeRF using limited camera viewpoints, harness the capabilities of diffusion, and subsequently create a Gaussian Splat for a more practical model.</p>
<p>Sadly, for some reason, currently unpublished improvements to SMoE have been extremely difficult to get published. The novel methods have even been rejected three times at ACM Transactions on Graphics, the SIGGRAPH journal in which Gaussian Splatting was introduced. Anyway, I&#39;ll spare you a massive rant on the current state of journal review processes. Nevertheless, I hope to see the publication soon, which would also benefit the Gaussian Splatting community since many improvements are transferable between the two techniques.</p>
<p>One thing is for sure, the field is more alive and kicking than I have ever experienced in my career. At <a href="https://datameister.ai/">Datameister.ai</a>, we&#39;re following up on all the developments in the field and are currently exploring how we can contribute to it. More on that later!</p>
<p>Feel free to discuss the article on reddit: <a href="https://www.reddit.com/r/GaussianSplatting/comments/1ax1102/a_higherlevel_view_on_ai_models_in_radiance/">https://www.reddit.com/r/GaussianSplatting/comments/1ax1102/a_higherlevel_view_on_ai_models_in_radiance/</a></p>
]]></content:encoded>
    </item>
    <item>
      <title>Making the case for custom LLMs and custom LLM deployments</title>
      <link>https://datameister.ai/blog/making-the-case-for-custom-llms-and-custom-llm-deployments/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/making-the-case-for-custom-llms-and-custom-llm-deployments/</guid>
      <pubDate>Wed, 20 Dec 2023 15:15:31 GMT</pubDate>
      <dc:creator>Ruben Verhack</dc:creator>
      <category>Lab</category>
      <category>Models &amp; Infrastructure</category>
      <description>Why custom LLMs and self-deployed models win: gain control, build IP, cut costs and protect your data, with Datameister.</description>
      <content:encoded><![CDATA[<figure class="post-figure"><img src="https://datameister.ai/blog/making-the-case-for-custom-llms-and-custom-llm-deployments/ng-your-own-large-language-model-llm-versus-using-proprietary-llms-the-image-should-feature-t_4f6d697be68928ade3e839f03b6c7a1e.jpg" alt="Making the case for custom LLMs and custom LLM deployments"></figure>
<p>In this article, I will cover two of the major debates in the NLP community and when working with clients:</p>
<p>Do you use an API of a proprietary company (e.g. OpenAI’s GPT-4) or do you use a custom / off-the-shelve open-source LLM?</p>
<p>If using an open source LLM, do you deploy your own nodes or do you rely on services such as Amazon Bedrock or Sagemaker?</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/making-the-case-for-custom-llms-and-custom-llm-deployments/ng-your-own-large-language-model-llm-versus-using-proprietary-llms-the-image-should-feature-t_4f6d697be68928ade3e839f03b6c7a1e_800.jpg" alt="Choose your side the debate: self-deployed open source LLMs or external proprietary APIs?"><figcaption><em>Choose your side the debate: self-deployed open source LLMs or external proprietary APIs?</em></figcaption></figure>
<p><strong>The answer to this question is not definitive and, naturally, it varies depending on the application.</strong> The fact that this field is constantly evolving makes it difficult to provide a straightforward response. While there are certainly advantages to utilizing external APIs (GPT-4’s capabilities are still the gold standard), there are also numerous pitfalls that must be taken into account. <strong>In many cases, opting for a custom and self-deployed LLM is the wisest and most cost-efficient choice.</strong></p>
<blockquote>
<p>Spoiler alert: I will obviously discuss how working with Datameister provides you with the best of both worlds.</p>
</blockquote>
<h2>Risk of API dependency</h2>
<p>There are many possible applications for LLMs. Most of the chat-like, creative applications have taken most of the spotlight recently, but actually in the industry <strong>LLMs are mainly used in much more closed contexts</strong>.</p>
<p>Typically, clients want to generate text (reports, mailings, ...) based on structured data (scores, categorical data, ...).</p>
<p>Or the other way around, the LLM receives unstructured data (freeform text) and is asked to extract some specific information out of a text.</p>
<p>Or alternatively, they want to serve an end-user predefined knowledge from their resource center in a controlled manner.</p>
<p><strong>Reproducibility is key in production environments</strong>. Basically, there are few cases where surprise outcomes are welcomed. The creative factor of generative AI has been the most attention-grabbing feature lately, but it is arguably not the most useful in most industries.</p>
<p>Picture the following. So you’ve made the investment to put in considerable engineering work on a specific OpenAI model. You’re app runs fine, the client is happy. You were able to be cost-efficient by using some of the older OpenAI models since they were fine for your use case. Life is good. You shut down shop for the weekend, and then this email appears:</p>
<figure class="post-figure"><img src="https://datameister.ai/blog/making-the-case-for-custom-llms-and-custom-llm-deployments/openai_6d52ca355afd4e848f312ffc09dfbebd_800.jpg" alt="OpenAI’s announcement in which they deprecate lange models that are only a few years"><figcaption><em>OpenAI’s announcement in which they deprecate lange models that are only a few years</em></figcaption></figure>
<p>I don&#39;t think your client was counting on having to update models every two years. Wouldn&#39;t it be nice if you had a specific version of a specific LLM running? A version that you knew would never suddenly change? An LLM that you know what works and what doesn&#39;t work.</p>
<p>LLMs are hard to validate. In theory, changing models is easy, but in practice, each model behaves very uniquely. Changes models costs time and thus money.</p>
<blockquote>
<p><strong>At Datameister, we ensure the deployment and continuous operation of your LLM for as long as you need.</strong></p>
</blockquote>
<h2>Building your own IP</h2>
<p>If I had a penny for every startup idea in 2023 that was along the following lines, then, well, I would have a lot of pennies:</p>
<blockquote>
<p>My app will be a chatbot front-end build on ChatGPT that takes in resources from the field X to provide users faster, easier and more human-readable info about X.</p>
</blockquote>
<p>Now, <a href="https://openai.com/blog/introducing-gpts">OpenAI has released GPTs</a> in which people can do exactly this without any code. Can you spot what the problem was in the above business plan? The main issue that the company did not hold the IP behind the core functionality of the product. The IP lays entirely in the data. In some cases, this will still be a valid plan, e.g. when you are the sole proprietor of uniquely copyrighted material, but in most cases it isn’t. OpenAI came in and destroyed 90% of the LLM startups in a single product release.</p>
<p>I haven’t come across many open-ended applications that are build on top of GPT-4 that delivered unique IP to a company. They mainly rely on the GPT-4 magic, <strong>which you do not own</strong>.</p>
<blockquote>
<p><strong>At Datameister, you own your LLM, we only deploy them for you.</strong></p>
</blockquote>
<p>One of the key advantages of deploying your own LLM is the freedom to customize the model according to your specific needs or preferences. Unlike external APIs, which may have limitations on customization options, having full control over the model allows you to tailor it precisely to fit your requirements. Of course you can fine-tune models on AWS or OpenAI. However, these are very costly operations and still provide you with a vendor lock-in. <strong>When you customize, you build intellectual property. Your IP is what sets you apart from your competition.</strong></p>
<p>Managing your own LLM provides an opportunity for deeper understanding and learning within your team or organization. By taking ownership of the model&#39;s management and maintenance, you can gain valuable insights into how it works and potentially drive innovation in natural language processing within your company.</p>
<h2>Cost Control</h2>
<p>For large-scale or long-term use, deploying your own LLM can be more cost-effective than paying for API usage, and even when using platforms like AWS SageMaker. While there may be an initial setup cost involved, the savings can add up over time as you avoid recurring API fees. Note that, in general, the throughput and delay requirements are the two main cost drivers.</p>
<h3>Inference</h3>
<p><strong>Most LLM applications do not have strict time constraints</strong>, allowing for various cost optimizations. At Datameister, we focus on two key drivers for reducing costs:</p>
<p>Scale-to-zero: Running an LLM continuously can be expensive. However, with our deployment platform, compute nodes are only active when necessary. While there may be a short delay when starting a node that was previously inactive, this is not an issue for non-time critical applications. In fact, it can result in up to 95% cost savings.</p>
<p>Spot instances: On platforms like AWS, spot instances offer lower costs but less predictability compared to on-demand instances which are more expensive but provide stability. By leveraging a robust job scheduling system like ours and not requiring real-time processing, you can take advantage of spot instances and save at least 50% on compute costs without worrying about their inherent unpredictability.</p>
<p>When you utilize SageMaker to deploy your own LLMs, you do not have the choice to use spot instances for inferencing (only for training). Instead, only the on-demand system is accessible, which leads to higher costs. Nevertheless, SageMaker does allow for serverless inferencing and off-line batch transforms. Although pricing remains relatively high.</p>
<h3>Fine-tuning</h3>
<p>Fine-tuning through external APIs such as OpenAI can be very expensive. Form our experience, fine-tuning a GPT3.5 on a few thousands (large) samples can rake up to hundreds of dollars. This does not allow you to do a lot of experimentation. Plus, even if you wanted to spent thousands of dollars on fine-tuning, you need to be in the <a href="https://platform.openai.com/docs/guides/rate-limits/usage-tiers">right usage tier</a> to be allowed to do so.</p>
<p>For the same cost-cutting reasons as in inferencing, it can be more cost efficient to deploy your own LLM if you need many iterations in your R&amp;D phase. Furthermore, you do not have a lock-in to a specific vendor which could change pricing at will.</p>
<blockquote>
<p><strong>Deploying your own LLM at Datameister can offer significant cost savings and predictability compared to using external APIs or AWS SageMaker.</strong></p>
</blockquote>
<h2>Full Control Over Data and Privacy</h2>
<p>This is a harder topic to cover. <a href="https://trust.openai.com/">OpenAI is now GDPR compliant</a> and you can run the OpenAI API in Europe through Azure’s OpenAI. You can also run Claude, or Jurassic-21 models using Amazon Bedrock in your preferred region. Oh, wait, no you can’t. At time of writing, most models are not available in every region on AWS, but it probably won’t take much time before they are.</p>
<p>However, <strong>many clients still prefer to have the LLM running in either their own cluster or in the Datameister cluster</strong>. This provides them with greater control over their data, ensuring enhanced privacy and security. This is especially crucial when dealing with sensitive or proprietary information. By keeping the data in-house, clients can guarantee its protection and confidentiality. However, theoretically, this shouldn&#39;t be a problem if external APIs are used correctly within the designated regions and if all applicable regulations are followed.</p>
<h2>Datameister: Tackling the Challenges Associated with Self-Deployed LLMs</h2>
<p>While there are many benefits to deploying your own LLM, it&#39;s important to consider the challenges that come with it:</p>
<p><strong>High initial setup costs and complexity:</strong> Setting up your own LLM requires a significant investment. You need the right infrastructure and resources to ensure smooth operation and optimal performance.</p>
<p><strong>Scalability challenges</strong>: Managing scalability in-house can be challenging, especially if there are sudden spikes in demand for your LLM.</p>
<p><strong>Limited knowledge, resources and support:</strong> Unlike established external APIs, deploying your own LLM may limit your access to support and resources. If you encounter unique challenges or bugs, you might have to rely on internal expertise or community forums for assistance.</p>
<p>And of course, there is the <strong>risk of obsolescence:</strong> NLP is rapidly evolving, with new advancements being made regularly. If you&#39;re deploying your own LLM, there&#39;s a risk that it might become outdated if you&#39;re unable to keep up with these advancements. However, as mentioned above, in many use cases it is actually preferred to have a system with known limitations, over a solution that is constantly evolving and needs to be constant validation. Furthermore, most of your power lays in your data. In the case of fine-tuning, you can fine-tune newer models with the same dataset.</p>
<blockquote>
<p><strong>While deploying your own LLM comes with its fair share of challenges, most of these are addressed when relying on Datameister.</strong></p>
</blockquote>
<p><strong>Most challenges are offloaded to Datameister:</strong></p>
<p><strong>Initial Setup Cost</strong>: Datameister has already covered the initial setup cost by building on their Datameister LLM deployment platform.</p>
<p><strong>Complexity</strong>: Datameister manages the complexity associated with setting up an LLM.</p>
<p><strong>Scalability</strong>: With Datameister&#39;s solution, scaling is taken care of by automatically spinning up instances as needed, reducing the challenges of managing scalability in-house. Scaling to zero machines is one of our unique offerings, this means there are no machines running when no workload is present. No machines = no costs.</p>
<p><strong>Support</strong>: Datameister offers experienced support to help you overcome any unique challenges or bugs you may encounter.</p>
<p><strong>Risk of Obsolescence</strong>: By relying on Datameister&#39;s expertise and continuous updates, you can mitigate the risk of your LLM becoming outdated.</p>
<h2>Conclusion</h2>
<p>In conclusion, here are the key points to consider when deciding between using an external proprietary API or deploying your own LLM with Datameister:</p>
<p>Opting for a custom and self-deployed LLM provides greater control, ownership, and customization options.</p>
<p>With Datameister, you can ensure the deployment and continuous operation of your LLM for as long as you need.</p>
<p>Building your own IP is crucial in most cases, as relying solely on external APIs may result in a lack of ownership over the core functionality of your product.</p>
<p>Deploying your own LLM allows for cost control and potential savings compared to recurring API fees or platforms like AWS SageMaker.</p>
<p>Datameister offers cost-cutting measures such as scale-to-zero instances and leveraging spot instances for inferencing.</p>
<p>You have full control over data privacy when running your LLM in either your own cluster or the Datameister cluster.</p>
<p>While deploying your own LLM comes with challenges, many of these are addressed by relying on Datameister&#39;s expertise and support.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Meet The Meisters</title>
      <link>https://datameister.ai/blog/meet-the-meisters/</link>
      <guid isPermaLink="true">https://datameister.ai/blog/meet-the-meisters/</guid>
      <pubDate>Thu, 14 Dec 2023 09:44:04 GMT</pubDate>
      <dc:creator>Ruben Verhack</dc:creator>
      <category>Behind the Scenes</category>
      <description>Meet the founders of Datameister, Axel Vlaminck and Ruben Verhack: why they started a deep-tech AI lab in Ghent and what they build, from 3D AI to Physical AI.</description>
      <content:encoded><![CDATA[<figure class="post-figure"><img src="https://datameister.ai/blog/meet-the-meisters/datameister-founders-axel-ruben.jpg" alt="Meet The Meisters"><figcaption><em>The Meisters: Axel (left), Ruben (right)</em></figcaption></figure>
<blockquote>
<p>Datameister is a deep-tech AI lab in Ghent, founded in 2023 by Ruben Verhack and Axel Vlaminck out of one conviction: the AI problems worth doing are the hard, deep ones, and they are worth going long on. Our work has run from cybersecurity to medical imaging to sports analytics, and has converged on spatial and visual intelligence and, now, Physical AI.</p>
<p>We are bootstrapped and built on real projects: every line of our code has shipped in a client&#39;s production system. What began as the two of us is now a team of more than a dozen engineers and researchers.</p>
<p><strong>Result:</strong> the depth, the track record, and the in-house R&amp;D to take on the AI problems most teams avoid.</p>
</blockquote>
<h2>Why we started Datameister</h2>
<p>We started Datameister in June 2023, the two of us, Axel and Ruben, out of three frustrations.</p>
<p>The first was academic. Ruben had spent years in research and loved its technical depth, but the impact was missing: work that is excellent on paper does not always change anything in the real world.</p>
<p>The second was about where we live. Ghent punches far above its weight, a <a href="https://www.vrt.be/vrtnws/en/2026/05/28/new-ranking-puts-ghent-in-top-4-of-europes-tech-cities/">top-ten global density leader for tech</a>, but it is better known for SaaS than for deep technical work. We wanted to do the harder, more research-heavy AI here.</p>
<p>The third was about time horizons. The investor climate rewards quick returns, which pushes companies toward thin products, the ChatGPT wrappers of the world. Those have their place, but it is not our game. We wanted room to go deep and long, where the hard problems actually get solved.</p>
<p>So we built a lab that could do exactly that: independent, technically deep, and patient enough to back its own R&amp;D.</p>
<h2>Bootstrapped, and built on real projects</h2>
<p>What sets us apart is depth, and a throughline to where it now points. Early on we took on whatever hard AI modelling problems came our way, across cybersecurity, medical imaging, and sports analytics, and we have been building, fine-tuning, and hosting LLMs for clients since GPT-2. Over time we specialized in spatial and visual intelligence: computer vision, 3D data, and the understanding and generation of scenes and assets. That work has found its place in Physical AI, getting models off the screen and onto robots that perceive and act in 3D space.</p>
<p>The other half is how we are built. Datameister is bootstrapped. We fund the deep work by doing real work, which keeps our incentives pointed at the same thing our clients care about: getting models into production. Good AI should earn its keep quickly in the real world, and the returns we chase come from systems that ship and keep running under load. A product that demos well but falls over in production is not what we are after.</p>
<p>That discipline shows up in our code. Everything we build lives in <a href="https://datameister.ai/blog/the-monorepo-as-ai-factory">one monorepo</a>, and every line in it has shipped in a real client project. Out of it grew the DM Library, our collection of AI capabilities proven in production, and the <a href="https://datameister.ai/blog/datameister-platform-accelerating-ai-deployment-for-visual-data">DM Platform</a> for deployment, MLOps, and delivery. That work runs at scale: clients from startups to the Fortune 100, tens of thousands of hours of video processed a month, and on the order of 100,000 open-source packages scanned a day for security. The monorepo is where our speed comes from, and our filter against the hype: if something does not survive contact with real data and real deployments, it does not stay. We take the bleeding edge and get it into production.</p>
<h2>Who are the Meisters?</h2>
<p>Datameister was founded by the two of us: <strong>Ruben Verhack</strong> (CEO) and <strong>Axel Vlaminck</strong> (CTO), engineers at heart with a strong passion for AI. We met at Oqton, the AI company later <a href="https://oqton.com/news/3d-systems-to-drive-adoption-of-additive-manufacturing-in-production-environments-with-the-acquisition-of-oqton/">acquired by 3D Systems for a reported 180M USD</a> in 2021. There we became an ad-hoc AI prototyping lab: management handed us an idea and a month to prove it out, technically and as a product. Axel led the technical side, Ruben owned the product. Killing most of those ideas gave us a sharp instinct for what AI can and cannot do, what scales, and what delivers value. It is also where we caught the itch to build something of our own.</p>
<h3>Ruben</h3>
<p>Ruben has been building software since 2007: first a company that took on all kinds of work, much of it image processing, then an AI radiology startup in 2019.</p>
<p>Alongside that, he built an academic career, earning a double PhD in computer science from Ghent University and TU Berlin. His doctoral work introduced Steered Mixture-of-Experts (SMoE), an image-based scene representation that predates today&#39;s <a href="https://datameister.ai/blog/ai-driven-breakthroughs-image-based-rendering">Gaussian Splatting</a>, and it earned a string of awards: the Google Faculty Award in 2015, a Best Paper Award at IEEE Transactions on Multimedia, and several Best Student Paper Awards. He was invited to speak at companies like Google (Mountain View and Zürich), Disney Research, and Netflix.</p>
<p>After the radiology startup, Ruben consulted across analytics, natural language processing, and computer vision. He then spent two years at Oqton, working on robotic welding and geometrical reasoning through AI.</p>
<h3>Axel</h3>
<p>Axel is a hands-on engineer who builds across the whole stack. He trained as an electronics engineer and moved into AI early, back when its courses were still considered exotic. His master&#39;s thesis was on training quadruped robots, years before Physical AI became a buzzword and the same ground Datameister works on today. He was one of the first employees at Oqton and one of the biggest drivers of its AI team.</p>
<p>Today he works across signal processing, computer vision, point clouds, and meshes. He is as comfortable with the physics as he is setting up MLOps environments or building his own transformer-based networks.</p>
<h2>The team we built</h2>
<p>We are just as proud of the people we have brought in since. Our Head of Engineering, Thijs Bernolet, joined from Autodesk and Oqton. Bernard Grymonpon, formerly of Showpad and Oqton, is our senior technical advisor. Jarne Van den Herrewegen holds a PhD focused on 3D AI representations. Behind them is a deeper bench of engineers and researchers whose work speaks for itself, and you will see many of them publishing here on the blog in the months ahead.</p>
<h2>What&#39;s next</h2>
<p>We are building out our in-house R&amp;D and pushing further into spatial intelligence and Physical AI. If you are an engineer or researcher who wants to work on hard problems with real-world stakes, take a look at our <a href="https://datameister.ai/jobs/">open roles</a>. And if you are a team with an AI problem that has to survive production, come say hi.</p>
]]></content:encoded>
    </item>
  </channel>
</rss>
