RoomPlan

RSS for tag

Create parametric 3D scans of rooms and room-defining objects.

Posts under RoomPlan tag

200 Posts

Post

Replies

Boosts

Views

Activity

Adding an object to RoomPlan
A feature of my app I am in need of is to allow users to go through their room and mark specific positions, then be able to navigate these positions with a floor plan like a map. Think google maps but for your room, showing the user's position. I know it is possible to make a floor plan with RoomPlan, which could act as a map, but would it be possible after the plan is made to track a user's location in the room and show it? Is this too complex for RoomPlan? And if so how would I tackle this problem?
0
0
998
Jul ’23
RoomPlan Categories and Models
In the presentation there was a reference to a Parent/Child relationship. The parent for doors and Windows might be Walls but the relationship between Walls or multiple Windows or doors would be that of a "Sibling" or "Peer" component to maintain logical consistency of the objects. I would also recommend a Junction Object, which means more than an Edge because it would describe the two peer objects that were being joined, and the angle of that junction between the objects. The Junction could also describe the shape of the junction to capture any curvature or discontinuity of the junction. Multiple junctions might also be peers because they would have a junction between other adjoining surfaces giving a more complete description to the structure of the room. The parent of all of these surfaces and junctions would be the Room itself. Such a description would be useful in an architectural review of the room structure.
0
0
970
Jul ’23
Roomplan: `story` is not appropriately applied to `floors` elements in CapturedStructure
So, I am using CapturedStructure to scan multiple spaces in a property. I intended to use the story field available on the Surface structures within the floors field. However, they all have a story == 0; and when I enumerate(), it seems incorrect as well. This is happening to me at least after printing the CapturedStructure into a JSON. This also happens to rooms's floors: The section states one story, but the floors all say 0
0
0
501
Jun ’23
RoomPlanExporter sample code, no objects being substituted
I'm trying to test the RoomPlan exporter with ModelProvider. I ran the sample code, and tried loading from the existing room plan samples of Merging Multiple Scans. Then after I open the exported USDZ output, none of the objects are being substituted with the objects inside RoomPlanCatalog.bundle. I have debugged and checked that the Catalog is loaded correctly. What is the specification of providing a catalog for RoomPlan's ModelProvider? As it's not clear what we should do regarding that from the documentation. Shouldn't there be a generic 3D mesh provided for objects such as Chair, Table, and Shelf, but I couldn't see any of them loaded. Although chair could be easily detected during the scan process, as I observed the session delegates. Tried configuring the captureSession.arSession with SceneReconstruction configuration, but there's no difference. It looks like the issue is only on the exporting process.
1
0
1.2k
Jun ’23
SCNodes disappear and then reappear
I can't post a video I don't think. But in the screen shots, I'm sightly making a circle with the phone and the green lines will disappear and then reappear. Those green lines are drawn via .addChildNode(). We're using RoomPlan to detect cabinets(.storage), and then we outline the cabinets with SCNNodes. We have other methods to capture cabinets that don't use RoomPlan. And the lines for those cabinets do not wink in and out. Perhaps there is a bug with visibility culling? We're pretty dang sure the nodes are not disappearing because we are calling .hide() anywhere. Perhaps object detection from RoomPlan running in the background is interfering?
2
0
782
Jun ’23
RoomPlan struggles to identify doors and windows. How to fix that?
Here is the current code I am using for it. When scanning my room, it is not identifying any door. And there are 2. Am I missing anything? import UIKit import RoomPlan import ARKit import RealityKit class RoomPlanViewController: UIViewController, RoomCaptureViewDelegate, UIViewControllerTransitioningDelegate { @IBOutlet weak var doneButton: UIButton! @IBOutlet weak var exportButton: UIButton! @IBOutlet weak var statusLabel: UILabel! var roomCaptureView: RoomCaptureView! let customDismissal = CustomSlideDownDismissal() var finalResults: CapturedRoom? override func viewDidLoad() { super.viewDidLoad() roomCaptureView = RoomCaptureView(frame: view.bounds) roomCaptureView.delegate = self view.insertSubview(roomCaptureView, at: 0) exportButton.isHidden = true statusLabel.isHidden = true self.transitioningDelegate = self } override func viewDidAppear(_ animated: Bool) { super.viewDidAppear(animated) roomCaptureView?.captureSession.run(configuration: RoomCaptureSession.Configuration()) } @IBAction func Back(_ sender: Any) { roomCaptureView?.captureSession.stop() self.dismiss(animated: true, completion: nil) } @IBAction func doneButtonPressed(_ sender: UIButton) { roomCaptureView?.captureSession.stop() doneButton.isHidden = true exportButton.isHidden = false } func captureView(didPresent: CapturedRoom, error: Error?) { statusLabel.isHidden = false statusLabel.text = error == nil ? "The scan was successfully completed" : "An error occurred during the scan: \(String(describing: error))" finalResults = didPresent print("DOOR HERE") print(finalResults?.doors.count as Any) exportButton.isHidden = false statusLabel.isHidden = false } @IBAction func exportButtonPressed(_ sender: UIButton) { let filename = "Room.usdz" let destinationURL = FileManager.default.temporaryDirectory.appending(path: filename) do { try finalResults?.export(to: destinationURL) let activityController = UIActivityViewController(activityItems: [destinationURL], applicationActivities: nil) }
1
0
1.1k
May ’23
Room Plan / ARKit - How to remove reel object scanned in ARView using RoomPlan API ?
Hi Apple community, Currently developing an iOS application using Room Plan API, I'd like to remove real world objects detected with Room Plan to my ARView. I already tried to use the following code but it deletes only the anchor entities (customText, UI instructions...) attached to the Anchor : arView.scene.removeAnchor(anchor) My aim is to delete real world object content to my ARView like in this example : (I have an error when uploading files like png, jpg or pdf so there is a link) https://ibb.co/yR8CRVy Is there any way to do that using Room Plan API and ARKit ? Thanks in advance, Goat
2
0
1.8k
May ’23
Modify RoomBuilder data before export
I need to modify the scanned room before export (e.g. add some additional objects + add some metadata ) From the RoomBulder doc: "Your app can then inspect or modify this data before exporting the scanned room to a USDZ file" How can I modify the scanned room? The members seem to be get only. Any Example ? Regards, Frank
2
1
743
May ’23
Is RoomPlan changing the world reference system when it is done?
So, I have been working with RoomPlan in an application that is sensitive to the model's orientation. However, sometimes—even if the number representing the orientation I am capturing seems right—the final orientation is quite wrong. Now, I have also noticed that sometimes (and I am not sure when, so it is kind of hard to reproduce) the representation of the room is shuffled when RoomCaptureView().captureSession.stop() is called... is RoomPlan reorganizing everything at the end? If so, is there any way to prevent this from happening? Thanks!
1
6
777
May ’23
RoomPlan `RoomCaptureSession.arSession` doesn't provide scene depth (Lidar information)
Hello, The RoomCaptureSession seems to be initialized differently when it is access through the RoomCaptureView compared to when it is created directly. In the second case, the captureSession.arSession doesn't collect Lidar depth map. roomCaptureView.captureSession.run(RoomCaptureSession.Configuration()) print(roomCaptureView.captureSession.arSession.currentFrame?.sceneDepth != nil) // prints true let captureSession = RoomCaptureSession() captureSession.run(RoomCaptureSession.Configuration()) print(captureSession.arSession.currentFrame?.sceneDepth != nil) // prints false What solution do I have? I need my own custom Visualizer
0
0
925
Apr ’23
RoomPlan API
I am using RoomPlan API in my application. Working fine for small apartments but when I am trying to scan a bigger apartment which takes more time greater than 15 minutes the API automatically stopped and finished the scan even though part of the apartment is still pending scanning. I need the original structure like a point cloud in 3D, the USDZ model has a white mesh structure. Is there any way to get a real 3D view from RoomPlan API or USDZ model. How I can change the colour of scanning lines. I am getting RSFloorPlan class value when scanning finished. How I can get this Floor Plan, I mean I need its 2d structure as we what we are scanning. Thanks! Ramneet Singh (iOS developer)
2
1
2.4k
Apr ’23
Difference between RoomPlan and ARKit plane and mesh classification
Hello, ARKit already have ways to identify walls, doors, chairs and other objects: ARMeshClassification ARPlaneAnchor.Classification Here there seems to say that RoomPlan is powered by a distinct (although similar) algorithms and AI model than ARKit scene understanding. Is it correct? I was wondering what was exactly the point of designing a new algorithm from scratch and also which of them present better performance and more reliable results? Why are two different methods designed for the same purpose integrated in the framework?
0
0
903
Apr ’23
How to add my own object detection to RoomPlan
I would like to do object detection that can not be done with RoomPlan. I'm trying to do 3D object detection using point clouds. Can I scan a room with RoomPlan and do my own object detection at the same time? Also, is it possible to additionally display the bounding box of the recognized object? What kind of object detection method is Apple currently using in RoomPlan? Best regards,
3
0
1.8k
Apr ’23
Adding an object to RoomPlan
A feature of my app I am in need of is to allow users to go through their room and mark specific positions, then be able to navigate these positions with a floor plan like a map. Think google maps but for your room, showing the user's position. I know it is possible to make a floor plan with RoomPlan, which could act as a map, but would it be possible after the plan is made to track a user's location in the room and show it? Is this too complex for RoomPlan? And if so how would I tackle this problem?
Replies
0
Boosts
0
Views
998
Activity
Jul ’23
RoomPlan Categories and Models
In the presentation there was a reference to a Parent/Child relationship. The parent for doors and Windows might be Walls but the relationship between Walls or multiple Windows or doors would be that of a "Sibling" or "Peer" component to maintain logical consistency of the objects. I would also recommend a Junction Object, which means more than an Edge because it would describe the two peer objects that were being joined, and the angle of that junction between the objects. The Junction could also describe the shape of the junction to capture any curvature or discontinuity of the junction. Multiple junctions might also be peers because they would have a junction between other adjoining surfaces giving a more complete description to the structure of the room. The parent of all of these surfaces and junctions would be the Room itself. Such a description would be useful in an architectural review of the room structure.
Replies
0
Boosts
0
Views
970
Activity
Jul ’23
example app with MultiRoom
i want to test MultiRoom, but i can't make it, can someone give me solution or example app
Replies
0
Boosts
0
Views
599
Activity
Jun ’23
Roomplan: `story` is not appropriately applied to `floors` elements in CapturedStructure
So, I am using CapturedStructure to scan multiple spaces in a property. I intended to use the story field available on the Surface structures within the floors field. However, they all have a story == 0; and when I enumerate(), it seems incorrect as well. This is happening to me at least after printing the CapturedStructure into a JSON. This also happens to rooms's floors: The section states one story, but the floors all say 0
Replies
0
Boosts
0
Views
501
Activity
Jun ’23
New version of RoomPlan fails when a surface is detected
Hello, I am using RoomPlan in iOS17 with SwiftUI the program crashes as soon as a new surface is detected. It seems to come from CaptureView. Anyone else experiencing the same issue? Thanks in advance
Replies
3
Boosts
1
Views
1.3k
Activity
Jun ’23
RoomPlanExporter sample code, no objects being substituted
I'm trying to test the RoomPlan exporter with ModelProvider. I ran the sample code, and tried loading from the existing room plan samples of Merging Multiple Scans. Then after I open the exported USDZ output, none of the objects are being substituted with the objects inside RoomPlanCatalog.bundle. I have debugged and checked that the Catalog is loaded correctly. What is the specification of providing a catalog for RoomPlan's ModelProvider? As it's not clear what we should do regarding that from the documentation. Shouldn't there be a generic 3D mesh provided for objects such as Chair, Table, and Shelf, but I couldn't see any of them loaded. Although chair could be easily detected during the scan process, as I observed the session delegates. Tried configuring the captureSession.arSession with SceneReconstruction configuration, but there's no difference. It looks like the issue is only on the exporting process.
Replies
1
Boosts
0
Views
1.2k
Activity
Jun ’23
Floor in CapturedRoom (RoomPlan)
Can I Keep the floor of the scanned CapturedRoom model with RoomPlan?. Every time I scan a space, the presented preview includes the floor but when I try to manipulate the 'finalResults' (CapturedRoom) I can't find the floor component. There is a way where I can keep it or rebuild it?. Thanks!
Replies
1
Boosts
1
Views
1k
Activity
Jun ’23
SCNodes disappear and then reappear
I can't post a video I don't think. But in the screen shots, I'm sightly making a circle with the phone and the green lines will disappear and then reappear. Those green lines are drawn via .addChildNode(). We're using RoomPlan to detect cabinets(.storage), and then we outline the cabinets with SCNNodes. We have other methods to capture cabinets that don't use RoomPlan. And the lines for those cabinets do not wink in and out. Perhaps there is a bug with visibility culling? We're pretty dang sure the nodes are not disappearing because we are calling .hide() anywhere. Perhaps object detection from RoomPlan running in the background is interfering?
Replies
2
Boosts
0
Views
782
Activity
Jun ’23
RoomPlan struggles to identify doors and windows. How to fix that?
Here is the current code I am using for it. When scanning my room, it is not identifying any door. And there are 2. Am I missing anything? import UIKit import RoomPlan import ARKit import RealityKit class RoomPlanViewController: UIViewController, RoomCaptureViewDelegate, UIViewControllerTransitioningDelegate { @IBOutlet weak var doneButton: UIButton! @IBOutlet weak var exportButton: UIButton! @IBOutlet weak var statusLabel: UILabel! var roomCaptureView: RoomCaptureView! let customDismissal = CustomSlideDownDismissal() var finalResults: CapturedRoom? override func viewDidLoad() { super.viewDidLoad() roomCaptureView = RoomCaptureView(frame: view.bounds) roomCaptureView.delegate = self view.insertSubview(roomCaptureView, at: 0) exportButton.isHidden = true statusLabel.isHidden = true self.transitioningDelegate = self } override func viewDidAppear(_ animated: Bool) { super.viewDidAppear(animated) roomCaptureView?.captureSession.run(configuration: RoomCaptureSession.Configuration()) } @IBAction func Back(_ sender: Any) { roomCaptureView?.captureSession.stop() self.dismiss(animated: true, completion: nil) } @IBAction func doneButtonPressed(_ sender: UIButton) { roomCaptureView?.captureSession.stop() doneButton.isHidden = true exportButton.isHidden = false } func captureView(didPresent: CapturedRoom, error: Error?) { statusLabel.isHidden = false statusLabel.text = error == nil ? "The scan was successfully completed" : "An error occurred during the scan: \(String(describing: error))" finalResults = didPresent print("DOOR HERE") print(finalResults?.doors.count as Any) exportButton.isHidden = false statusLabel.isHidden = false } @IBAction func exportButtonPressed(_ sender: UIButton) { let filename = "Room.usdz" let destinationURL = FileManager.default.temporaryDirectory.appending(path: filename) do { try finalResults?.export(to: destinationURL) let activityController = UIActivityViewController(activityItems: [destinationURL], applicationActivities: nil) }
Replies
1
Boosts
0
Views
1.1k
Activity
May ’23
Room Plan / ARKit - How to remove reel object scanned in ARView using RoomPlan API ?
Hi Apple community, Currently developing an iOS application using Room Plan API, I'd like to remove real world objects detected with Room Plan to my ARView. I already tried to use the following code but it deletes only the anchor entities (customText, UI instructions...) attached to the Anchor : arView.scene.removeAnchor(anchor) My aim is to delete real world object content to my ARView like in this example : (I have an error when uploading files like png, jpg or pdf so there is a link) https://ibb.co/yR8CRVy Is there any way to do that using Room Plan API and ARKit ? Thanks in advance, Goat
Replies
2
Boosts
0
Views
1.8k
Activity
May ’23
How to display usdz from RoomPlan API to RealityKit
Hi, i want to create an app that uses RoomPlan API to scan the room and display the scanned room model into the reality kit. How can i do this?
Replies
0
Boosts
1
Views
708
Activity
May ’23
Modify RoomBuilder data before export
I need to modify the scanned room before export (e.g. add some additional objects + add some metadata ) From the RoomBulder doc: "Your app can then inspect or modify this data before exporting the scanned room to a USDZ file" How can I modify the scanned room? The members seem to be get only. Any Example ? Regards, Frank
Replies
2
Boosts
1
Views
743
Activity
May ’23
Displaying color based on the type of object detected.
Does anyone know how to display color when scanning and on the mini model based on the type of object detected? Apple demonstrated this feature in their article about RoomPlan but the documentation doesn't show this option. here is a video of the feature: https://mlr.cdn-apple.com/video/roomplan_fig4_results_580x800_8d63f073b8.mp4
Replies
1
Boosts
2
Views
1k
Activity
May ’23
Is RoomPlan changing the world reference system when it is done?
So, I have been working with RoomPlan in an application that is sensitive to the model's orientation. However, sometimes—even if the number representing the orientation I am capturing seems right—the final orientation is quite wrong. Now, I have also noticed that sometimes (and I am not sure when, so it is kind of hard to reproduce) the representation of the room is shuffled when RoomCaptureView().captureSession.stop() is called... is RoomPlan reorganizing everything at the end? If so, is there any way to prevent this from happening? Thanks!
Replies
1
Boosts
6
Views
777
Activity
May ’23
RoomPlan `RoomCaptureSession.arSession` doesn't provide scene depth (Lidar information)
Hello, The RoomCaptureSession seems to be initialized differently when it is access through the RoomCaptureView compared to when it is created directly. In the second case, the captureSession.arSession doesn't collect Lidar depth map. roomCaptureView.captureSession.run(RoomCaptureSession.Configuration()) print(roomCaptureView.captureSession.arSession.currentFrame?.sceneDepth != nil) // prints true let captureSession = RoomCaptureSession() captureSession.run(RoomCaptureSession.Configuration()) print(captureSession.arSession.currentFrame?.sceneDepth != nil) // prints false What solution do I have? I need my own custom Visualizer
Replies
0
Boosts
0
Views
925
Activity
Apr ’23
Can I use room plan api with scene reconstruction api ?
I want to use room plan api alongside with scene reconstruction api at the same time. but doesn't seem to work
Replies
2
Boosts
0
Views
2.7k
Activity
Apr ’23
RoomPlan API
I am using RoomPlan API in my application. Working fine for small apartments but when I am trying to scan a bigger apartment which takes more time greater than 15 minutes the API automatically stopped and finished the scan even though part of the apartment is still pending scanning. I need the original structure like a point cloud in 3D, the USDZ model has a white mesh structure. Is there any way to get a real 3D view from RoomPlan API or USDZ model. How I can change the colour of scanning lines. I am getting RSFloorPlan class value when scanning finished. How I can get this Floor Plan, I mean I need its 2d structure as we what we are scanning. Thanks! Ramneet Singh (iOS developer)
Replies
2
Boosts
1
Views
2.4k
Activity
Apr ’23
What does "generating texture with resolution of ..." mean in RoomPlan
Hi, we are developing a basic app with room plan and get the following debug output on the console if we start capturing: "generating texture with resolution of x, y". It would be nice to get a texture of the wall in addition to the geometry. What does the debug info mean? Does roomPlan generate textures in addition to the geometry? Frank
Replies
1
Boosts
0
Views
710
Activity
Apr ’23
Difference between RoomPlan and ARKit plane and mesh classification
Hello, ARKit already have ways to identify walls, doors, chairs and other objects: ARMeshClassification ARPlaneAnchor.Classification Here there seems to say that RoomPlan is powered by a distinct (although similar) algorithms and AI model than ARKit scene understanding. Is it correct? I was wondering what was exactly the point of designing a new algorithm from scratch and also which of them present better performance and more reliable results? Why are two different methods designed for the same purpose integrated in the framework?
Replies
0
Boosts
0
Views
903
Activity
Apr ’23
How to add my own object detection to RoomPlan
I would like to do object detection that can not be done with RoomPlan. I'm trying to do 3D object detection using point clouds. Can I scan a room with RoomPlan and do my own object detection at the same time? Also, is it possible to additionally display the bounding box of the recognized object? What kind of object detection method is Apple currently using in RoomPlan? Best regards,
Replies
3
Boosts
0
Views
1.8k
Activity
Apr ’23