There's robotics in there, moving around tables and beds and such. That's hard, and a maintenance headache. So, like regular IoT, it won't get done, and you just get the surveillance part.
The Internet of Things crowd hasn't even been able to do affordable power windows for houses yet. Even basic heating duct dampers don't integrate well, much to the annoyance of Nest owners. Let alone an outside air intake.
I once went to an "Internet of Things" meeting in SF. It was in a converted factory space near the shipyard, with big windows looking out on the bay, and skylights in the roof. The big windows had a manual endless chain which could be used to crank them open, as did the skylights. There were also ceiling fans and a conventional HVAC system.
None of this was integrated into an automatic climate control system, which was amusing to see while being pitched on IoT. It would be nice to see the windows, skylights, and fans coordinated to provide a good environment without consuming fuel unnecessarily, but no. It got too stuffy when there were too many people inside, despite all that access to the outside.
When I saw "Spatial computing", I thought this was going to be about Spatial OS, from Improbable. They built a system intended to be a back end for big-world MMOs. They burned through several hundred million dollars (from Softbank, who else?) and produced a back end nobody can afford to use. You have to host on Google and pay for every in-game event. Several games shipped using it and they all went bust within months.
When technonoly settles down, I imagine spatial computing as a physical small device (mini computer) in which you plug one two.. or 20 cameras.
Then, after an initialisation process, that spatial automat is ready.
It can now detect things in an environment it has automatically detected (indoor flat, hospital, ect).
Then the programming development will only be to :
- link between 'spatial events' like a dog barka, a lying grandma seems inconscient,ect..
- and fonctional processes like 'call ambulance', 'put alarm on', ect...
Windows Mixed Reality, HoloLens, Azure Spatial Anchors, Azure Kinect, all fairly large projects (well, except Azure Kinect, but they have kept it around a lot longer than I would have expected, so they seem pretty dedicated).
The big challenge for spatial computing is that there is no spatial computer science, and casual observers overlook this fact. As in, there is a dearth of computer science -- basic data structures and algorithms -- for efficiently reasoning about spatiotemporal relationships of the type common to multimodal sensor data models at scale. Neither Amazon nor Microsoft, companies mentioned in the article, are addressing this technology gap in a meaningful way (I have some contact with their programs). They are solving very narrow cases that don't generalize or scale usefully.
A question I ask when doing due diligence on "spatial computing" technology is what computer science problems did you solve to create the technology? The common answer is "none" and most people dabbling in the space aren't even aware hard computer science problems exist as prerequisites to building such technology unless they've been banging their head against it for a while. That's the state of the spatial computing market today. We also know that it is (currently) impossible to build such a thing by sprinkling some magic spatial computing dust on open source technology stacks -- they can't express the necessary mechanics. You'll be writing a lot of code from first principles, it isn't a business execution problem.
We've had petabytes of this type of sensor data for decades, and the vision and desire to build digital twins with that data, that part isn't new. There are hardcore technical reasons this doesn't exist as a real thing, it isn't that no one has ever thought of spatial computing before. To make matters worse, most of the companies with the expertise and desire to use such a platform lack the expertise and execution to create it. Creating such a platform has to come from somewhere else.
It is possible to build a spatial computing platform today that actually works, the computer science challenges have solutions, but the combination of domain expertise and computer science skillset to execute it is extremely rare at the moment. That said, spatial computing will be a trillion dollar platform business once someone pulls it off.
The elementary operations for spatial computing are a mixture of complex constraint/event processing and ad hoc graph search, frequently on data models with types that are not representable as an integer and therefore lack the characteristic properties of integers like order and trivial partitioning.
Three of the above are notoriously difficult to scale individually. For spatial computing we need to scale all three simultaneously in a single computational construct. And if that wasn't enough, these are real-time systems that need to support extremely high write throughput while all of those operations are happening -- offline batch reorganization isn't an option. These are petabyte scale systems in the trivial case (tens of TB in the most minimalist data models), so you aren't going to be building a bunch of indexes or similar.
It is a vexing computer science and architecture problem. And even if you solved that elementary computing infrastructure problem, there are several more hard/interesting computer science problems related to topological types and conflict resolution that you'll likely need to solve before you have a useful system. It is headaches all the way down.
Is this is a solution looking for a problem? As you mention something as such in your first comment?
Personally I don’t see a need to this “maximizing efficiency” paradigm for spatial computing, which seems to be mostly driven by industry (the potential for making billions of dollars) not as an inborn desire to better this world. It’s not that I decline it, but the need seems somewhat artificial in a way.
Needing new data structures? What would that even look like to create a generic data structure which was specifically useful to spatial computing? Why not use existing data structures and algorithms as has been done already?
FWIW, that is completely obsolete at this point. :) It did solve one set of interesting problems very effectively but introduced some others. There has been dramatic improvements in both the theoretical and applied elegance over the years, partly just out of implementation experience.
Back then, it was a bit of a “blind men and the elephant” case with some really interesting computer science constructs. Now we have a pretty pure theoretical model of the elephant, and so an elegant implementation is not the sum of what the blind men would have described. Much more capability, far fewer lines of code, albeit completely opaque to someone that doesn’t understand what they are looking at.
Naively it seems that ingestion for data of the form
(space (longitude, latitude), time, DATA)
is readily addressed by the ideas in that patent:
- hierarchical partitioning of space, each node storing the data for the regions represented by a number of leaves. shard per leaf and adaptive rebalancing (merge,split, move shard) as necessary.
- within each shard, partition by time
With this you can gang together any number of nodes that you need to hit the aggregate ingestion rate requirement.
The query
"give me all the data that occurred in this region of space in this time period"
is readily supported as well. Applications (shard aware or hitting some stub proxy aware of the sharding) sitting on top of this datastore can use this repeatedly to build arbitrary logic (though you would have to query all the nodes if you don't have a space region, which is fine if your query rate is low).
Likely my mental model of applications consuming spatial data is too simple, but what other innovation would be required beyond this for ingestion and querying? What kind of interface does the datastore provide to the application?
Would also love to hear more about the comment you made above
"there are several more hard/interesting computer science problems related to topological types and conflict resolution that you'll likely need to solve before you have a useful system"
Scale and throughput have their own interesting problems. You have to think through the implications when you have billions of shards, dynamic rebalancing across servers, etc. Many common idioms stop working. Also, naive time handling doesn’t generalize well. Someone will eventually give you a data set that does violence to your assumptions about what such a data set looks like.
Eventually, things you ordinarily assume you can cache in memory don’t actually fit in memory. It forces changes in the computer science strategy.
Ignore the applications for spatial computing in the article, industry already has a very long list of concrete applications that they are trying to operationalize today. The real use cases aren't as sexy as the articles but they are incredibly valuable and utilitarian.
The problem already exists at scale today in many, many companies that everyone has heard of. Mitigating and working around this has been a large part of what I do for many years. If such a platform came into existence today, dozens of companies would each happily spend tens of millions per year to use it tomorrow; they are all ready lighting similar amounts of money on fire in this area on infrastructure that doesn't work.
The business challenge is that the engineering effort required to build such a platform is simply too large to easily fund, even inside large tech companies. There is no appetite for that scale of investment in infrastructure software anymore, everyone kind of waits around for something to show up in open source that they can re-purpose. Less risk and less cost. In this particular case, that is unlikely to happen for the foreseeable future, someone will need to make a real investment.
You might be missing the forest for the trees. Digital twins are already used today. 3D Scanning adoption is growing quickly across a whole range of industries. Billions of dollars change hands for AR/VR products and experiences.
Also, on the technology side, there's tons that can be done on the edge these days. Those petabytes of data you mention can be crunched down to mere gigabytes before reaching the cloud.
Adoption of spatial computing will not be binary "once someone pulls it off". It's going to be gradually, step after step.
> Digital twins are already used today. 3D Scanning adoption is growing quickly across a whole range of industries.
You might be considering a lot broader things to be spatial computing that are short of the sense being considered here.
Yes, representing objects and annotating trivial scenes is interesting and is starting to happen today.
But free-form automated representation of the environment in ways that the spatial shortcuts we rely upon ("inside", "on top of", etc) can be used, (non-graph) paths of different types can be solved, and actuator kinematics can find and interact with things, etc: it's really hard.
AR and VR and being able to interact with object meshes and geometry is a start. But computational geometry and encoding world constraints in a useful way is really hard. We'll snatch some incremental parts from AR and vision research, but we'll need some breakthroughs in the space, too, to do the really cool stuff.
You are focusing on the trivial narrow case, which is not where the value is. The broad case is reproducing a real-time mirror of some part of the planet in arbitrary detail from data. Reality running on a computer. Nothing you are talking about addresses that. I know all of this tech, I’ve worked with it operationally across many industries.
At its core, spatial computing is about queryable reality. 3D scanning of objects, AR/VR, etc are all adjuncts to this. They are ways of consuming the data model or synthesizing non-real parts, not creating the base model of reality. The latter is the hard part, the rest doesn’t matter in the big picture.
Believe it or not, but I've also been working first hand with this tech for a long time. As in, actually developing the underlying engines.
What you describe is a broad vision that may or may not happen at some point in the future. I agree about the queryable reality part but disagree that AR/VR, 3D scanning etc. "don't matter". Because in a lot of real-life use-cases you don't need the "real-time 3D mirror" but instead can get 80% of the value with something 10% as complex.
A problem that I was surprised to not be solved well is the study of paths (not represented as graphs). It seems that for example trying to cluster trajectories over time through real coordinates has a bit of prior work (there’s a bit of an unintuitive and costly metric called the Frechet distance that can be used) but is not the solved problem I would have expected for this type of fundamental problem (that would seem to come up a lot for human movement applications). Like answering the question of “what are the most commonly used paths to get to work” without resorting to discretizing steps into nodes on a graph seems tricky as far as I can tell.
I'm not convinced that scientific formalism is always necessary or valuable. "Computer Science" is an anachronism that arose due to the sort of people who built the first computers and the sort of reasoning they valued. It would have been bizarre to complain about how pointillism in art lacked fundamental theory when artists first embraced it. If people want to play around with a new approach to computing and spend some money doing so, I don't think having them sit down and prove theorems about optimal data structures is strictly necessary. Maybe it won't be mathematically perfect on the first go around, but who cares?
> I thought it was quantum computing? It's crazy how quickly the hype switches.
It's almost like the future needs multiple kinds of progress and breakthroughs.
Quantum computing looks like it's going to be very useful for some unusual, top-end problems before too, too long (let's say, 7 years).
Spatial computing might enable lots of small benefits in many sectors.
> What ever happened to graphene? I remember reading a bunch of articles in 2015 that it would revolutionize society by 2020.
Quietly growing at a 30-60% CAGR in dollars (and by a ridiculous factor in usage, since prices are coming down rapidly), finding dozens of high-end, simple (early) applications (with prospects for many new uses on the horizon).
I understand most words in this essay, but not the high-level meaning. What is spatial computing? How is it different to 3D reconstruction, slam, and the like?
3d reconstruction is one small piece of a suite that would solve problems like this-- there's also path solving, semantic scene representation, kinematics, etc.
What's in the space, how would people in the space understand/describe it, how can actuators interact with it, how can people and devices find paths, what does a person moving along this path mean, how can a device assist in this abstract goal... It's a lot more than a mesh of geometry and a set of probable robot locations to do something useful. It's a whole lot of data and a whole lot of things that are poorly understood.
Technical hurdles aside, this vision really sucks! Old lady shells out a small fortune to surround herself with robotic spyware to facilitate the utopia of... living completely alone in one's elder years? The real problem is that she lives in an alienated society which has left her without the presence of kids, boarders, neighbors, church friends, etc. in her home.
What's the name of that story where everyone lives in their own automated room and the central computer won't let them above ground? Solving for that world is a crime against society, not technological progress.
So if us-east-1 goes down, does Martha become a prisoner in her own home? Worse, will she be bludgeoned by a piece of malfunctioning smart home furniture?
We didn't think through the implications of benign failure cases the first time we tried IoT, let alone determined malicious attackers, and things went to shit. I'm not convinced that we'll do any better once "spatial computing" goes commercial.
Once upon a time about four years ago I made a system that would monitor my location based on WiFi signal strength. If I was watching a movie from my local DLNA server, I could track the progress of the video (remotable software on a fire tv). If I was watching tv, I could query what channel my hdhomerun was on. I then put this together.
If my phone moved from downstairs to upstairs or vice versa, the movie would rewind 10 seconds and would be played on the tv upstairs or downstairs. This gave me the ability to move between my two rooms with TVs and the show would follow me. For antenna tv, the hdhomerun app would be loaded and set to the correct channel. I wanted to expand this to my zwave lights using motion sensors but never got around to it because I was fixated on my garage.
My garage has a camera that can stream rtsp. I had recently played with opencv and got it to detect our cars with pretty good accuracy but our cars are generic cars that half of america drives. So I spent almost 2 years trying to figure a way to get the system to identify our cars. I went so far down the path of using a raspberry pi in the car to authenticate with the house which would trigger the garage door to open as we pull up the driveway. Then my buddy recommended two colored stickers on our windshield. So simple and it worked! (Edit: a lot of this can be resolved today with a high resolution camera that can make out our license plate from a far enough distance... but I just lowered my car and ripped off the front license plate so back to square one)
I’ve been fighting small bugs for the last year or so that makes it hard to use (dog may set off the motion sensor, or you forget your phone and lights and tv turns off thinking no one is around). Plus we got a new tv which replaced the buggy fire tv last Christmas which has a completely different api and less interaction. I’ve considered using Bluetooth so smart wristbands could replace our phones but other projects have creeped into scope.
I would love to solve it but have a very hard time selling the system to friends and family who think nothing of flipping a light switch or picking up a remote. Maybe this is a tech too early for its time?
The days of store and batch analyze are over.
There is just way too much data being generated with the myriad of cheap sensors available.
Being able to analyze data and adjust your models in realtime is the only way forward.
Check out Software in Motion https://www.swimos.org/ One of the more interesting platforms in this space.
Spatial computing is really that the physical world and digital world are fully interacting. Where you can overlay digital information into the real world and what you do in the real world affects the digital world.
The most common use cases today would be AR/VR.Spatial computing could be embedded into something as small as a room, a city, or even a country. Spatial computing within an operating room is a clear value prop.
Spatial computing companies like Magic Leap have shown that the infrastructure is bulky and expensive. Most importantly, consumers aren't willing to pay for it just yet. Expect to see enterprise and government applications before smart furniture.
Not entirely sure if directly related to point clouds/slam
The newer devices coming with Lidar... imagine integration with that and "upload your living room" to a furniture store then shows your living room with random combinations of products -- like that scene in Fight Club.
I'm coming from web interface/api work so trying to get into this space(3d slam) is kind of hard... the stuff I'm working on is pathetic computation wise eg. single core pi. But the idea of getting a running state in real time with real measurements paired with imu data is pretty cool to me.
46 comments
[ 3.0 ms ] story [ 100 ms ] threadThe Internet of Things crowd hasn't even been able to do affordable power windows for houses yet. Even basic heating duct dampers don't integrate well, much to the annoyance of Nest owners. Let alone an outside air intake.
I once went to an "Internet of Things" meeting in SF. It was in a converted factory space near the shipyard, with big windows looking out on the bay, and skylights in the roof. The big windows had a manual endless chain which could be used to crank them open, as did the skylights. There were also ceiling fans and a conventional HVAC system.
None of this was integrated into an automatic climate control system, which was amusing to see while being pitched on IoT. It would be nice to see the windows, skylights, and fans coordinated to provide a good environment without consuming fuel unnecessarily, but no. It got too stuffy when there were too many people inside, despite all that access to the outside.
When I saw "Spatial computing", I thought this was going to be about Spatial OS, from Improbable. They built a system intended to be a back end for big-world MMOs. They burned through several hundred million dollars (from Softbank, who else?) and produced a back end nobody can afford to use. You have to host on Google and pay for every in-game event. Several games shipped using it and they all went bust within months.
Then, after an initialisation process, that spatial automat is ready. It can now detect things in an environment it has automatically detected (indoor flat, hospital, ect).
Then the programming development will only be to : - link between 'spatial events' like a dog barka, a lying grandma seems inconscient,ect..
- and fonctional processes like 'call ambulance', 'put alarm on', ect...
Source, examples?
A question I ask when doing due diligence on "spatial computing" technology is what computer science problems did you solve to create the technology? The common answer is "none" and most people dabbling in the space aren't even aware hard computer science problems exist as prerequisites to building such technology unless they've been banging their head against it for a while. That's the state of the spatial computing market today. We also know that it is (currently) impossible to build such a thing by sprinkling some magic spatial computing dust on open source technology stacks -- they can't express the necessary mechanics. You'll be writing a lot of code from first principles, it isn't a business execution problem.
We've had petabytes of this type of sensor data for decades, and the vision and desire to build digital twins with that data, that part isn't new. There are hardcore technical reasons this doesn't exist as a real thing, it isn't that no one has ever thought of spatial computing before. To make matters worse, most of the companies with the expertise and desire to use such a platform lack the expertise and execution to create it. Creating such a platform has to come from somewhere else.
It is possible to build a spatial computing platform today that actually works, the computer science challenges have solutions, but the combination of domain expertise and computer science skillset to execute it is extremely rare at the moment. That said, spatial computing will be a trillion dollar platform business once someone pulls it off.
Three of the above are notoriously difficult to scale individually. For spatial computing we need to scale all three simultaneously in a single computational construct. And if that wasn't enough, these are real-time systems that need to support extremely high write throughput while all of those operations are happening -- offline batch reorganization isn't an option. These are petabyte scale systems in the trivial case (tens of TB in the most minimalist data models), so you aren't going to be building a bunch of indexes or similar.
It is a vexing computer science and architecture problem. And even if you solved that elementary computing infrastructure problem, there are several more hard/interesting computer science problems related to topological types and conflict resolution that you'll likely need to solve before you have a useful system. It is headaches all the way down.
Personally I don’t see a need to this “maximizing efficiency” paradigm for spatial computing, which seems to be mostly driven by industry (the potential for making billions of dollars) not as an inborn desire to better this world. It’s not that I decline it, but the need seems somewhat artificial in a way.
Spatial Sieve Tree (Inventor J. Andrew Rogers) https://patents.google.com/patent/US7734714B2/en
https://www.jandrewrogers.com/2015/03/02/geospatial-database...
https://www.jandrewrogers.com/2015/10/08/spacecurve/
These might give a hint at why cs101 might not be enough for the scale and kind of systems he is talking about.
Back then, it was a bit of a “blind men and the elephant” case with some really interesting computer science constructs. Now we have a pretty pure theoretical model of the elephant, and so an elegant implementation is not the sum of what the blind men would have described. Much more capability, far fewer lines of code, albeit completely opaque to someone that doesn’t understand what they are looking at.
(space (longitude, latitude), time, DATA)
is readily addressed by the ideas in that patent:
- hierarchical partitioning of space, each node storing the data for the regions represented by a number of leaves. shard per leaf and adaptive rebalancing (merge,split, move shard) as necessary.
- within each shard, partition by time
With this you can gang together any number of nodes that you need to hit the aggregate ingestion rate requirement.
The query
"give me all the data that occurred in this region of space in this time period"
is readily supported as well. Applications (shard aware or hitting some stub proxy aware of the sharding) sitting on top of this datastore can use this repeatedly to build arbitrary logic (though you would have to query all the nodes if you don't have a space region, which is fine if your query rate is low).
Likely my mental model of applications consuming spatial data is too simple, but what other innovation would be required beyond this for ingestion and querying? What kind of interface does the datastore provide to the application?
Would also love to hear more about the comment you made above
"there are several more hard/interesting computer science problems related to topological types and conflict resolution that you'll likely need to solve before you have a useful system"
Eventually, things you ordinarily assume you can cache in memory don’t actually fit in memory. It forces changes in the computer science strategy.
The problem already exists at scale today in many, many companies that everyone has heard of. Mitigating and working around this has been a large part of what I do for many years. If such a platform came into existence today, dozens of companies would each happily spend tens of millions per year to use it tomorrow; they are all ready lighting similar amounts of money on fire in this area on infrastructure that doesn't work.
The business challenge is that the engineering effort required to build such a platform is simply too large to easily fund, even inside large tech companies. There is no appetite for that scale of investment in infrastructure software anymore, everyone kind of waits around for something to show up in open source that they can re-purpose. Less risk and less cost. In this particular case, that is unlikely to happen for the foreseeable future, someone will need to make a real investment.
Adoption of spatial computing will not be binary "once someone pulls it off". It's going to be gradually, step after step.
You might be considering a lot broader things to be spatial computing that are short of the sense being considered here.
Yes, representing objects and annotating trivial scenes is interesting and is starting to happen today.
But free-form automated representation of the environment in ways that the spatial shortcuts we rely upon ("inside", "on top of", etc) can be used, (non-graph) paths of different types can be solved, and actuator kinematics can find and interact with things, etc: it's really hard.
AR and VR and being able to interact with object meshes and geometry is a start. But computational geometry and encoding world constraints in a useful way is really hard. We'll snatch some incremental parts from AR and vision research, but we'll need some breakthroughs in the space, too, to do the really cool stuff.
At its core, spatial computing is about queryable reality. 3D scanning of objects, AR/VR, etc are all adjuncts to this. They are ways of consuming the data model or synthesizing non-real parts, not creating the base model of reality. The latter is the hard part, the rest doesn’t matter in the big picture.
What you describe is a broad vision that may or may not happen at some point in the future. I agree about the queryable reality part but disagree that AR/VR, 3D scanning etc. "don't matter". Because in a lot of real-life use-cases you don't need the "real-time 3D mirror" but instead can get 80% of the value with something 10% as complex.
I'm skeptical. Seems like a solution in search of a problem. Who is willing to pay money for this?
It happens to be called something a bit different: https://en.m.wikipedia.org/wiki/Geographic_information_scien...
What ever happened to graphene? I remember reading a bunch of articles in 2015 that it would revolutionize society by 2020.
It's almost like the future needs multiple kinds of progress and breakthroughs.
Quantum computing looks like it's going to be very useful for some unusual, top-end problems before too, too long (let's say, 7 years).
Spatial computing might enable lots of small benefits in many sectors.
> What ever happened to graphene? I remember reading a bunch of articles in 2015 that it would revolutionize society by 2020.
Quietly growing at a 30-60% CAGR in dollars (and by a ridiculous factor in usage, since prices are coming down rapidly), finding dozens of high-end, simple (early) applications (with prospects for many new uses on the horizon).
(EDIT: changed "the words" to "most words".)
What's in the space, how would people in the space understand/describe it, how can actuators interact with it, how can people and devices find paths, what does a person moving along this path mean, how can a device assist in this abstract goal... It's a lot more than a mesh of geometry and a set of probable robot locations to do something useful. It's a whole lot of data and a whole lot of things that are poorly understood.
What's the name of that story where everyone lives in their own automated room and the central computer won't let them above ground? Solving for that world is a crime against society, not technological progress.
The Machine Stops. https://en.wikipedia.org/wiki/The_Machine_Stops
We didn't think through the implications of benign failure cases the first time we tried IoT, let alone determined malicious attackers, and things went to shit. I'm not convinced that we'll do any better once "spatial computing" goes commercial.
If my phone moved from downstairs to upstairs or vice versa, the movie would rewind 10 seconds and would be played on the tv upstairs or downstairs. This gave me the ability to move between my two rooms with TVs and the show would follow me. For antenna tv, the hdhomerun app would be loaded and set to the correct channel. I wanted to expand this to my zwave lights using motion sensors but never got around to it because I was fixated on my garage.
My garage has a camera that can stream rtsp. I had recently played with opencv and got it to detect our cars with pretty good accuracy but our cars are generic cars that half of america drives. So I spent almost 2 years trying to figure a way to get the system to identify our cars. I went so far down the path of using a raspberry pi in the car to authenticate with the house which would trigger the garage door to open as we pull up the driveway. Then my buddy recommended two colored stickers on our windshield. So simple and it worked! (Edit: a lot of this can be resolved today with a high resolution camera that can make out our license plate from a far enough distance... but I just lowered my car and ripped off the front license plate so back to square one)
I’ve been fighting small bugs for the last year or so that makes it hard to use (dog may set off the motion sensor, or you forget your phone and lights and tv turns off thinking no one is around). Plus we got a new tv which replaced the buggy fire tv last Christmas which has a completely different api and less interaction. I’ve considered using Bluetooth so smart wristbands could replace our phones but other projects have creeped into scope.
I would love to solve it but have a very hard time selling the system to friends and family who think nothing of flipping a light switch or picking up a remote. Maybe this is a tech too early for its time?
The most common use cases today would be AR/VR.Spatial computing could be embedded into something as small as a room, a city, or even a country. Spatial computing within an operating room is a clear value prop.
Spatial computing companies like Magic Leap have shown that the infrastructure is bulky and expensive. Most importantly, consumers aren't willing to pay for it just yet. Expect to see enterprise and government applications before smart furniture.
The newer devices coming with Lidar... imagine integration with that and "upload your living room" to a furniture store then shows your living room with random combinations of products -- like that scene in Fight Club.
I'm coming from web interface/api work so trying to get into this space(3d slam) is kind of hard... the stuff I'm working on is pathetic computation wise eg. single core pi. But the idea of getting a running state in real time with real measurements paired with imu data is pretty cool to me.