Generation of furnishing suggestions

A computer-implemented method using 3D scene data and a generative AI model addresses furnishing complexities by automating alteration integration and visualization, enhancing design flexibility and accuracy while accommodating user preferences.

WO2026155677A1PCT designated stage Publication Date: 2026-07-23INTER IKEA SYST +1
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
INTER IKEA SYST
Filing Date
2025-10-06
Publication Date
2026-07-23

AI Technical Summary

Technical Problem

Existing furnishing processes face challenges in efficiently integrating spatial arrangements, style coordination, and personal preference accommodation, leading to complexities in generating furnishing suggestions that balance functionality and aesthetics.

Method used

A computer-implemented method utilizing 3D scene data, camera angle imagery, and a generative AI model to generate and integrate furnishing suggestions by adding or removing objects, while employing statistical methods to resolve conflicts and ensure coherent alterations.

Benefits of technology

The method automates the integration and visualization of alterations, enhancing design flexibility and accuracy, and tailors suggestions to user preferences, ensuring spatial representation and alignment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure SE2025050900_23072026_PF_FP_ABST
    Figure SE2025050900_23072026_PF_FP_ABST
Patent Text Reader

Abstract

A computer-implemented method (100) for generating furnishing suggestions, the method comprising: obtaining (110) 3D scene data of a 3D scene (12), determining (120) one or more images (33) from one or more view perspectives (31) of the 3D scene (12); generating (130) updated imagery (36) based on the camera angle imagery (32) provided to a generative AI model (22), comprising one or more alterations (19) to a image (33) of the camera angle imagery (32); mapping (140) information pertaining to the updated imagery (36) onto the 3D scene (12); generating (150), updated 3D scene data, reflecting at least one of said one or more alterations (19) depicted in the updated imagery (36); and providing (160) an updated 3D scene (16) to a user based on the updated 3D scene data.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] GENERATION OF FURNISHING SUGGESTIONS TECHNICAL FIELD

[0002] The present invention relates to a computer-implemented method of generating furnishing suggestions. It also relates to an associated computerized system, a computer program product, and a computer readable storage medium.

[0003] BACKGROUND

[0004] Furnishing involves enhancing the functionality and aesthetic appeal of indoor environments, impacting comfort and usability. However, furnishing is associated with challenges due to complexities involved in, for example, spatial arrangements, style coordination, and personal preference accommodation. The technicality behind generation of furnishing suggestions accordingly involves balancing functional requirements and user preferences. This requires understanding of spatial dimensions and layouts to ensure that furniture fits proportionally and adheres to, for example, ergonomic standards. Additionally, it integrates knowledge of, material properties, and color theory to create cohesive interiors. Hence, designing a space that utilizes available spatial dimensions in a satisfactory manner, while reflecting individual taste, requires careful consideration and expertise. Furthermore, individuals engaging in furnishing may be swamped with alternatives or otherwise not be aware of potential furnishing alternatives due to a large amount of available furnishing alternatives.

[0005] In view of the above deficiencies, the present inventors are herein presenting computer-implemented approaches for generating furnishing suggestions.

[0006] SUMMARY

[0007] An object of the present invention is therefore to provide one or more improvements in the field of furnishing.

[0008] In a first aspect, a computer implemented method for generating furnishing suggestions is provided. The method comprises obtaining 3D scene data of a 3D scene corresponding to an indoor user environment, determining camera angle imagery of the 3D scene data, the camera angle imagery being one or more images from one or more

[0009] P33240533view perspectives of the 3D scene, and generating updated imagery based on the camera angle imagery provided to a generative Al model. The updated imagery comprises at least one updated image, each updated image comprising one or more alterations to a corresponding image of the camera angle imagery and depicting the same view perspective as said corresponding image. The method further comprises mapping the updated imagery onto the 3D scene, the mapping comprising overlaying information pertaining to the updated imagery onto the 3D scene from said corresponding view perspective of each updated image, generating, based on the mapping, updated 3D scene data, the updated 3D scene data reflecting at least one of said one or more alterations depicted in the updated imagery, and providing an updated 3D scene to a user based on the updated 3D scene data.

[0010] The first aspect may aim to solve the technical problem of efficiently generating interior design suggestions by automating the integration and visualization of alterations.

[0011] In some embodiments, the method further comprises an addition and / or removal of one or more objects to said corresponding image. This may provide the technical effect of enhancing design flexibility by allowing dynamic modifications to the scene.

[0012] In some embodiments, the generating comprises generating one or more 3D objects based on the alteration being said addition, each 3D object comprising pose data in relation to the 3D scene. This may provide accurate spatial representation and alignment in the updated scene.

[0013] In some embodiments, the method further comprises adding one or more 3D objects to the 3D scene prior to determining the camera angle imagery, each 3D object comprising pose data in relation to the 3D scene. This may allow for preliminary customization before further processing.

[0014] In some embodiments, the 3D objects from generating and 3D objects from adding are obtained from the same predetermined collection of 3D objects. This may provide consistency and coherence in object selection and placement.

[0015] In some embodiments, the step of generating updated imagery comprises feeding data of 3D objects in the predetermined collection of 3D objects to the

[0016] P33240533generative Al model. This may enhance the model’s ability to generate realistic and contextually appropriate alterations.

[0017] In some embodiments, the step of generating updated imagery further comprises feeding a steering input to the generative Al model, the steering input comprising one or more of a geographical location, user preference input, user purchase input, and 3D scene data of a user. This may tailor the design output to specific user needs and preferences.

[0018] In some embodiments, the 3D scene is obtained from one or more of a sketch, floorplan, imagery, a user-created 3D scene, a voice prompt, or a text prompt. This may allow for diverse data input methods, increasing the system's adaptability.

[0019] In some embodiments, in response to said overlaying causing an overlap, the mapping further comprises merging by selecting one or more alterations in an area of overlap as a most prominent alteration based on a statistical method. This may ensure an improved selection of alterations when conflicts arise.

[0020] In some embodiments, the statistical method is a majority vote method, the majority vote method comprising determining the amount of times a type of alteration is depicted in the updated imagery. This may provide a systematic approach to resolving conflicts in modifications.

[0021] In some embodiments, the majority vote method further comprises an order of selection, wherein the order of selection comprises a selection of one or more of an object type, object color, object style, object placement, and object pose. This may prioritize alterations based on predefined criteria, enhancing decision-making efficiency.

[0022] In some embodiments, the method further comprises obtaining one or more of a geographical location, user preference input, user purchase input, and 3D scene data of a user, and wherein the order of selection is further based on the user input. This may personalize the furnishing suggestions in accordance with user-specific data.

[0023] In some embodiments, each image in the camera angle imagery depicts a unique view perspective, and wherein the number of images is based on the size of the indoor user environment. This may improve image capture based on spatial constraints.

[0024] P33240533In some embodiments, determining the camera angle imagery comprises determining view perspectives dynamically determined based on predefined rules. This may adapt the image capture strategy to the specific characteristics of the scene.

[0025] In some embodiments, the view perspectives are further determined based on layout of the 3D scene, items determined as present in the 3D scene, and / or dimensions of the 3D scene. This may align the capture strategy with the attributes of the space.

[0026] In some embodiments, the dynamic determination of view perspectives comprises analysing the 3D scene to identify viewpoints with respect to at least one of a: coverage, detail, user preference, and positioning one or more virtual cameras at said identified viewpoints. This provides comprehensive and relevant image data for processing. In some embodiments, the dynamic determination of view perspectives comprises determining viewpoints such that the entirety of the 3D scene is depicted in the camera angle imagery. This may ensure complete and thorough representation of the scene for accurate analysis and modification.

[0027] In a second aspect a computerized system comprising a processor configured to carry out the functionality of the computer-implemented method of the first aspect is provided.

[0028] The second aspect may aim to solve the technical problem of executing complex design algorithms in real-time by providing the necessary computational power and architecture.

[0029] In a third aspect a computer program product comprising computer code for performing the functionality of the computer-implemented method of the first aspect is provided.

[0030] The third aspect may aim to solve the technical problem of ensuring accessibility and portability of the furnishing suggestion system by enabling the method to be deployed across various platforms and devices.

[0031] In a fourth aspect a computer-readable storage medium is provided. The computer-readable storage medium comprises instructions, which when executed by one or more processors of a computer-implemented system, cause the processor to perform the functionality of the method of the first aspect.

[0032] P33240533The fourth aspect may aim to solve the technical problem of storage and retrieval of furnishing suggestions by ensuring that the functionality of the method can be executed.

[0033] The present approach captures images from dynamically determined view perspectives of the 3D scene. These images are then processed by a generative Al model to propose alterations. The system further integrates these alterations into the 3D scene by mapping detailed, segmented content from the altered imagery. In instances of overlapping alterations, an intelligent statistical method is employed to resolve conflicts and select the most prominent suggestion. Ultimately, this enables the integration of pre-existing 3D models from a curated collection into the updated 3D scene, reducing manual intervention while generating relevant and coherent furnishing suggestions.

[0034] BRIEF DESCRIPTION OF THE DRAWINGS

[0035] Embodiments of the invention will be described in the following description of the present invention; reference being made to the appended drawings which illustrate non-limiting examples of how the inventive concept can be reduced into practice.

[0036] Fig. l is a schematic flowchart of a computer-implemented method according to some embodiments.

[0037] Fig. 2 is a schematic diagram of an indoor user environment where 3D scene data is being obtained, according to some embodiments.

[0038] Fig. 3 is a schematic illustration of an indoor user environment and view perspectives, according to some embodiments.

[0039] Fig. 4 depicts a schematic flowchart and illustrations of data and method steps, according to some embodiments.

[0040] Fig. 5 is an illustration of updated imagery, according to some embodiments. Fig. 6 shows a computer-readable storage medium.

[0041] Fig. 7 shows a computerized system according to some embodiments.

[0042] DETAILED DESCRIPTION

[0043] The present disclosure relates to computer-implemented approaches for generating furnishing suggestions in an indoor user environment. This system aims to

[0044] P33240533enhance interior design processes by utilizing 3D scene data representative of the indoor environment, and to, based on the 3D scene data, provide updated imagery comprising suggestions for alterations within a given space. An updated 3D scene comprising the alterations, i.e. furnishing suggestions, may then be provided to a user to view.

[0045] Fig. 1 illustrates a schematic flowchart of a computer-implemented method 100 for generating furnishing suggestions for an indoor user environment. The indoor user environment can encompass various settings, such as residential rooms, office spaces, home environments such as kitchens and bathrooms, or other interior locations. It may comprise a single room or multiple rooms.

[0046] In the following disclosure several terms or concepts will be introduced. Some of these pertain to the physical world and others to the virtual world, meaning that they exist solely in a digital state (i.e., in the form of bits) to be interpreted by a computer. It shall be understood from the teachings herein that an “indoor user environment” refers to a physical space, and “3D scene data” refers to data that, when interpreted by a computer, represents a layout of that physical space. The term “camera angle imagery” refers to images collected in the 3D scene virtually, meaning the imagery refers to images depicting a virtual space, the imagery being in a digital form. The term “updated 3D scene”, and the data thereof (of images of the updated 3D scene), is equally a virtual representation of the indoor user environment, with virtual 3D objects added therein. At least the virtual updated 3D scene is viewable by the user by use of any computerized system, as will be further described below.

[0047] The method 100 comprises a step 110 of obtaining 3D scene data of a 3D scene corresponding to the indoor environment. The 3D scene data can be sourced from various inputs such as sketches, floorplans, imagery, user-created 3D scenes, voice prompts, or text prompts.

[0048] Sketches can be created manually on paper and digitized using a scanner or smartphone camera, or directly crafted using digital sketching tools and tablets such as a touchpad with a stylus. Floorplans may be generated through architectural software such as AutoCAD or SketchUp, or by scanning and digitizing existing physical plans using image processing software. Imagery can for example be captured with cameras, smart glasses, headsets, home robots or smartphones, while drones equipped with

[0049] P33240533cameras can offer views of larger spaces. 3D scene data may be based on the image or images. A 3D scene may use any monocular or binocular depth perception model to estimate a 3D scene from the imagery. User-created 3D scenes may be developed using any room planner or 3D modelling software such as Blender or Tinkercad, or through interactive virtual reality (VR) applications. Voice prompts may be captured using voice recognition software or smart assistants like Alexa and Google Assistant, converting verbal descriptions into text with natural language processing (NLP) tools. Text prompts may involve typing descriptions of the indoor environment into a text processing application or system interface, with NLP enhancing text to generate 3D models.

[0050] As is thus understood, the 3D scene data may be collected directly from a user, or be based on stored data, the stored data optionally being collected by a user. The stored data may be used to construct a virtual 3D scene, thereby generating 3D scene data. 3D scene data generated in a room planner tool may be directly obtained therefrom. The 3D scene may be a point cloud map, mesh model, voxel grid or be comprised of Non-Uniform Rational B-Splines Modeling (NURBS) surfaces.

[0051] In some embodiments, the method 100 further comprises a step 115 of adding one or more 3D objects to the 3D scene. Each 3D object includes pose data relative to the 3D scene. Pose data refers to data comprising the location of the 3D object in the 3D scene data (e.g. an “x, y, / ’-location or a relative location to other objects or structures), as well as the rotation of the 3D object. The added 3D objects, and their respective pose data, improves the spatial recognition of the generative Al model. This in turn improves the alterations, increasing the likelihood that alterations being additions are made in spatially logical places, and with spatially logical rotations. The added 3D objects may be added according to a set of predefined rules or manually input to the 3D scene. The set of predefined rules may include a type of object rule, a number of object rule, an object location rule, and a physical limitation rule.

[0052] The type of object rule may be that certain objects must be placed into the 3D scene, if possible.

[0053] The number of object rule may be that as many objects as spatially possible are to be placed into the 3D scene.

[0054] P33240533The object location rule may state that certain types of objects are to be placed in certain locations in the 3D scene.

[0055] The physical limitation rule utilizes knowledge regarding physical laws and / or object knowledge to guide the placement of objects. For example, a physical law may be related to gravity, such that an object cannot be placed into an empty space. An object knowledge law may indicate that certain objects may not be placed on certain other objects as this would cause one of the objects to break.

[0056] The method further involves a step 120 of determining camera angle imagery of the 3D scene data. The determining 120 involves capturing one or more images from various view perspectives. This is to say, the camera angle imagery includes one or more images, each depicting a view perspective or orientation of the 3D scene relative to a subject. This indicates a perspective determined by the angle of a camera. The angle influences how the subject is perceived, emphasizing particular features or spatial relationships within each image.

[0057] The method further involves a step 130 of generating updated imagery based on the camera angle imagery. The generating 130 involves using a generative Al model to create alterations to the original images while preserving the same view perspectives. One or more updated images are created for one or more of the camera angle imagery. There may be zero, one, or several updated images for each camera angle image. The updated imagery comprises at least one updated image. The camera angle imagery produced is inputted to a generative Al model, which has been previously trained. The generative Al model will alter the images that are fed to the generative Al model, changing the items placed therein. This is referred to as “alterations”. The alterations are the basis of the furnishing suggestions.

[0058] In some embodiments, the generative Al model is instructed to only make alterations concerning furnishing. Alternatively or additionally, the generative Al model may be instructed to not make alterations to structural elements depicted in the images.

[0059] An alteration may be one or more of an addition of an object or a removal of an object. Whilst alterations may be interpreted as different from an addition or a removal, such as a color change, a change in object style, or a change in object placement to name a few examples, these will entail a removal and / or an addition of an object. For

[0060] P33240533example, if the generative Al “moves” a lamp from a position A to a position B, this will entail removing the lamp from position A and placing an identical lamp in position B, i.e., a removal followed by an addition. An addition of an object involves introducing new elements into the scene, such as furniture or decor.

[0061] The generative Al model may be implemented by any known technologies in the art, such as Generative Adversarial Networks (GANs), Diffusion Models and Variational Autoencoders (VAEs). Such models are used for creating imagery and alterations. GANs include two neural networks, a generator and a discriminator, that work together in a competitive setting. The generator creates images, while the discriminator evaluates them, providing feedback to improve the output. This iterative process enables the generation of realistic images by refining the generator’s capabilities. VAEs, on the other hand, use an encoder-decoder architecture to learn a compressed representation of input data. They map input data to a latent space and then reconstruct it, allowing for the generation of new data samples by sampling from this latent space. VAEs may be useful in generating variations of input data while maintaining structural coherence. The generative Al model may be pre-trained for the purpose of generating furnished indoor environments.

[0062] The step 130 of generating updated imagery may further comprise feeding a steering input to the generative Al model. The steering input aims to steer the generative Al model to make alterations that fit more precisely with stated or assumed preferences of the user. The steering input may comprise one or more of a geographical location, user preference input, user purchase input, and 3D scene data of a user. A geographical location may be automatically detected by the computer, or manually input by the user. A user preference input may comprise voice prompts or text prompts, images provided by the user, or any other method of relaying user preferences regarding furnishing. User purchase may be obtained by the computer from a database, thereby introducing information regarding what type of objects the user prefers. The 3D scene data, or 3D scene data of other indoor environments previously stored by the user, may further be used as steering input. The steering input may comprise automatically obtained contextual images sourced from a database, wherein the selection of contextual images is based on the geographical location of the user.

[0063] P33240533Subsequently, the method 100 includes a step 140 of mapping the updated imagery onto the 3D scene. This process involves overlaying information pertaining to the updated images onto 3D scene data. Information pertaining to the updated images may be the pixels comprising an updated image. The mapping may comprise a texture mapping, projection mapping, UV mapping, bump mapping, photogrammetry, depth estimation, stereo vision, scene graph, and / or the use of a neural network. The method 100 may alternatively entail the computer determining in what locations in the 3D scene a certain alteration took place.

[0064] In some embodiments, the mapping 140 may further comprise 2D to 3D depth estimation. Alternatively, the information pertaining to the updated imagery may comprise classified 3D objects. In this alternative, the mapping comprises segmenting at least some of the updated imagery into objects and classifying the segmented objects prior to overlaying. The classifying comprises assigning a label and / or determining a location of the segmented objects in the 3D scene based on the location in the 2D image. Segmenting and classifying may be done by using one or more of Convolutional neural networks, recurrent neural networks, support vector machines, K-nearest neighbours, decision trees and random forests, a naive bayes classifier, K-means clustering, principal component analysis, Vision Transformers (ViTs), and transfer learning.

[0065] In some embodiments, the segmenting of an image further comprises generating semantic and spatial relationships between segmented objects. That is to say, the classifying might entail designating an object as “vase on table”, or “carpet perpendicular to wall with window”.

[0066] In a further embodiment, the step 140 of mapping may further comprise selecting a 3D object based on the segmented classified objects in an updated image and projecting the selected 3D object onto the 3D scene from the corresponding view perspective of the updated image from where the selected 3D object was segmented. The information pertaining to the updated imagery in this embodiment is thus the selected 3D object. This may be done by choosing a 3D object to project onto the 3D scene based on the classification of a segmented object. For example, the classification may be compared to a predetermined collection of 3D objects. Furthermore, the updated

[0067] P33240533imagery may be segmented such that one or more contact points of segmented objects are classified. The contact points may be a bottom of the segmented object in cases where the object is to rest on a surface. The contact point may be a top of a segmented object in cases where the object is to hang from a surface. The contact point may be several points in cases where the segmented object is to rest on multiple surfaces. It is thus to be understood that depending on the segmented object type, as revealed by the classification, various areas or points of the segmented object will be classified as contact points.

[0068] Regardless of the embodiment of the information pertaining to the updated imagery, the mapping will cause information regarding alterations to be placed into the 3D scene data from corresponding view perspectives. Henceforth, there will be made referrals to alterations in the 3D scene data. It should thus be understood that the alterations are, after the mapping 140, in the form according to the embodiments stated above, i.e. in the form of pixels on a 3D surface, and / or 3D object representations of the alterations.

[0069] In some examples the overlaying may cause an overlap between several alterations. An overlap means that an alteration depicted in an updated image occupies a space that is at least partially occupied by an alteration in another updated image. That is to say, the alterations at least partially occupy the same space in the 3D space. As is understood, the space can be both a 3D or 2D space. For example, it may be that a lamp has been placed on a tableside table in each of two updated images, causing an overlap. Alternatively, the overlap may be that a large couch has been placed in an area in a first updated image, and a table has been placed in a second updated image in such a manner that at least a part of the table occupies at least a part of the area in the second updated image as is occupied by the couch in said first updated image. Thus, there is a need to determine the most preferable alteration present in the camera angle imagery. The merging step 145 may involve selecting alterations in areas of overlap based on a statistical method. The statistical method may comprise a majority vote method.

[0070] The method 100 further includes a step 150 of generating updated 3D scene data, which reflect the alterations depicted in the updated imagery. The updated 3D scene may be constructed by determining what alterations were made in the updated

[0071] P33240533imagery. Based on this determination, objects are selected for insertion in the 3D scene data or a replica thereof. Such replica refers to a duplicate or copy of the 3D scene data, typically used as an alternative dataset that mirrors the original 3D scene which allows modifications or experiments to be performed without altering the original data directly.

[0072] In embodiments where the updated imagery is segmented and classified, and 3D objects selected based thereon are projected onto the 3D scene, the step 150 of generating updated 3D scene data comprises selecting which alterations (projected 3D objects) are to be included in the updated 3D scene data. This may be done by projecting 3D objects as was previously described and merging 145 in accordance with the statistical method. Thus, a 3D scene with novel 3D objects will be attained.

[0073] Where the alterations are additions, the method 100 may include an optional step 155 of generating one or more 3D objects. In this case, each 3D object comprises pose data in relation to the 3D scene. This may involve analysing an outcome of the step 140 of mapping the updated imagery to determine respective locations of the additions made. The additions in the form of objects may be accordingly recognized, and a 3D object selected from a predetermined collection of 3D objects can be selected. These 3D objects from the predetermined collection of 3D objects may then be placed into the corresponding locations in the 3D scene data.

[0074] In some embodiments, when the 3D scene data is obtained, a virtual coordinate system for the 3D scene is established. The 3D objects mentioned above may be placed by determining the locations of alterations in the 3D scene data according to pose data relative to the coordinate system, wherein the 3D objects are placed into the corresponding location where the alteration occurred.

[0075] Regardless of how the updated 3D scene is generated at the step 150, it will include alterations created by the generative Al model. The alterations in the updated 3D scene constitute the furnishing suggestions.

[0076] In a further embodiment, the 3D objects are recognized and compared to the objects in the predetermined collection of 3D objects. Based on the comparison, each 3D object may be assigned a similarity score. This may be done by comparing metadata of the 3D objects. Such metadata may include attributes including object type, dimensions, material properties, color, texture, usage context, rendered images of the

[0077] P33240533object from different perspectives, or the like. The comparison is performed by analyzing these attributes to identify matches or similarities based on predefined criteria or algorithms. For example, the process might involve evaluating object categories, checking compatibility in size and proportions, assessing material and texture properties, or comparing colors using similarity metrics. The results of these comparisons are combined into a similarity score, with each attribute contributing according to its relevance to the overall context. The 3D object in the collection of 3D objects with the highest similarity score may be inputted to the 3D scene data in the location of the corresponding alteration or most prominent alteration. Here, “most prominent” refers to the alteration that is most significant, noticeable, or impactful within the context of the scene. It is the alteration that stands out the most, which could be conditioned by size, pose data in relation to the 3D scene, or importance to the overall 3D scene.

[0078] The above embodiments regarding comparing 3D objects may be utilized for the alternative embodiment of the mapping 140, wherein the updated imagery is segmented and objects therein are classified. The classified objects in the updated imagery are thus instead compared to the 3D objects in the predetermined collection of 3D objects as described above, in order to select a 3D object for a corresponding classified object in the updated imagery.

[0079] In some embodiments, the 3D objects with relatively lower similarity scores may be stored as alternative 3D objects to be placed into the 3D scene data. To this end, a descending order of similarity scores may be generated, each successive 3D object being considered as a potential alternative for insertion into the 3D scene data, based on its relevance and compatibility with the alteration or scene context. Alternatively, in order to compare the alteration to the predetermined collection, the method 100 may involve a step of assigning 156 a semantic label to a 3D object. The semantic labels may then be compared to semantic labels in the predetermined collection. Thus, a best match can be determined based on the semantic labels. This may be done by analyzing and matching the semantic labels of objects, which represent their meaning or category (e.g., “chair” or “table”), with those in the predetermined collection. Each semantic label from the 3D scene is compared to semantic labels in the predetermined collection, for

[0080] P33240533example using string matching or machine learning-based semantic analysis. The object with the highest similarity score is then selected as the best match. A similar scheme as discussed above may be realized, but with comparison based on semantic labels instead of 3D object metadata.

[0081] Regardless of the method of determining 3D objects to place into the location of an alteration, the merging 145 may comprise storing 3D objects from the predetermined collection that were not selected. The stored alternatives may be presented to the user, for example in response to the user clicking on a specific object. To this end, the user may be able to view the 3D objects that were omitted, and potentially manually change the order of relevance between the 3D objects, for example based on personal preference.

[0082] In some embodiments, the generation at step 150 of the updated 3D scene data may involve a step 157 of generating one or more 3D objects based on the alterations. These 3D objects may be generated by conducting a depth estimation for each alteration in each updated image, storing the generated 3D objects, and then placing the generated 3D objects in accordance with the corresponding alteration in the 3D scene data. This may be done as an alternative to finding similar objects in the predetermined collection, or as a supplementary method thereto when no 3D objects of sufficient similarity score can be determined.

[0083] The 3D objects in the step 155 of generating and the 3D objects in the step 115 of adding may be obtained from the same predetermined collection of 3D objects. This beneficially guides the generative Al model to add objects which exist in the predetermined collection of 3D objects, thereby increasing the likelihood that high similarity scores can be achieved when performing the step 155 of generating 3D objects.

[0084] In situations where a sufficiently high similarity score cannot be found for an object, the method may comprise 3D generating a model of the object. Such a situation may arise when a similar or identical object is not present in the predetermined collection of 3D objects. As was stated above, in one embodiment the step 140 of mapping comprises segmenting and classifying updated images, and 3D objects based on the classification are projected onto the 3D scene. In a further embodiment related

[0085] P33240533thereto, the 3D objects that are selected based on the classification is from the same predetermined collection of 3D objects as the 3D objects in the step 115 of adding.

[0086] In a further embodiment, data of the 3D objects in the predetermined collection of 3D objects may be fed to the generative Al model during the step 130 of generating the updated imagery.

[0087] The updated 3D scene data is then used in a subsequent step 160 of providing an updated 3D scene to the user. This may be done by communicating it to the user, for example through a user device, such as a smartphone, Mixed Reality or VR headset, or to a computer comprising computer program code enabling viewing of the updated 3D scene.

[0088] Turning to Figs. 2-5, the steps of the method 100 introduced above will be further exemplified according to visualizations of a scenario where the method 100 can be applied.

[0089] In Fig. 2, an exemplary view of an indoor user environment 10 is shown. In the indoor user environment 10, a user 4 is depicted collecting 3D scene data, using a VR headset. The 3D scene data may, however, be collected in various ways as discussed above. The indoor user environment 10 comprises one or more objects 17, such as a window 17-1 and a carpet 17-2.

[0090] In Fig. 3, the 3D scene data has been obtained and a 3D scene 12 thereof is depicted in the figure. The method thus proceeds to generate the camera angle imagery. The camera angle imagery includes one or more images from respective view perspectives 31, in this case three although it could generally be one or more, of the 3D scene data. In the figure, the view perspectives 31 are represented by cameras.

[0091] However, as the 3D scene is a virtual scene, images are collected virtually, and no physical camera is used. References may be made to virtual cameras, illustrative for the point of the step of collecting the camera angle imagery.

[0092] The images may be dynamically determined based on predefined rules such as user view, top view, or perspective view rules. A user view refers to capturing images of the 3D scene from the vantage point typically seen by a person standing within the environment. This may be particularly useful, as the generative Al may have been trained on more images from this perspective than from other perspectives, since such

[0093] P33240533images may be more common in readily available databases. The top view involves capturing the scene from above, offering a bird’s-eye perspective. This view is beneficial for capturing the overall layout and spatial relationships between objects. The perspective view captures the scene from an angle that emphasizes depth and dimension, providing a sense of scale and proportion within the space. The perspective view may thus be from a comer. In some embodiments, additional factors may influence the dynamic determination of camera angles. For instance, the layout of the 3D scene, the presence of items indicating user preference, or the dimensions of the scene may guide the selection of viewpoints.

[0094] The process may also involve analyzing the scene to identify viewpoints that offer high coverage, detail, and alignment with user preferences. For example, it may be the case that the user has a particular interest in objects in an area of the 3D scene, wherein the camera angle imagery may contain several view perspectives 31 of the areas of interest. Virtual cameras may be positioned strategically to ensure the entirety of the 3D scene is effectively captured in the imagery. This beneficially means that the entirety, or at least relatively large portions, typically those viewable by the user, of the 3D scene may receive furnishing suggestions.

[0095] The view perspectives 31 may be determined based on one or more of a layout of the 3D scene 12, items determined as present in the 3D scene 12, and dimensions of the 3D scene 12. For example, the determination of view perspectives 31 may be influenced by rules regarding the layout, items present, and dimensions of the scene. For instance, the layout may influence the view perspectives, as the view perspectives are chosen in a manner ensuring high coverage of the space.

[0096] The dynamic determination may specifically entail analysing the 3D scene to identify view perspectives 31 with respect to at least one of a coverage, detail, and a user preference. It may further comprise positioning one or more virtual cameras at said identified view perspectives 31. To achieve a satisfactory coverage of the 3D scene, the system examines the spatial arrangement and selects view perspectives 31 that encompass the entire 3D scene, or at least relatively large portions thereof, typically those viewable by the user. This approach allows for capturing a large scope of the space, highlighting areas of interest such as focal points or functional zones.

[0097] P33240533The coverage may relate to coverage of areas of interest, such as focal points or highly utilized spaces. Coverage of such areas might be prioritized as they provide insights into how these areas interact with the rest of the indoor user environment 10. Certain areas might be beneficially captured in the camera angle imagery due to their functionality, aesthetic importance, or potential for design improvements.

[0098] An example of such an area could be an area containing a centrepiece or a workspace of a living room. Determining items present in the 3D scene 12 involves identifying and cataloguing objects within the indoor user environment 10. This process can influence view perspectives by highlighting the need to focus on specific objects or groups of objects, ensuring they are adequately represented in the imagery.

[0099] For example, capturing a dining table from multiple angles might be important to assess its placement relative to surrounding furniture.

[0100] Another example may be areas containing hobby-related items or items with certain patterns. The dimensions of the scene may also play a role in determining view perspectives. Larger spaces may require more viewpoints to ensure comprehensive coverage, while smaller areas might need fewer but more focused perspectives to capture relevant details. The height, width, and depth of the scene can dictate the angles needed to fully visualize the space, ensuring that the imagery reflects the true scale and proportions of the indoor user environment 10.

[0101] Detail-oriented view perspectives 31 can be identified by focusing on sections of the scene with increased requirements of clarity. This involves positioning virtual cameras in a way that captures intricate design elements or complex object arrangements. For instance, in capturing a workspace, viewpoints might be adjusted to emphasize the organization of desk items or the ergonomic setup, aligning with the previously mentioned need to assess the placement and accessibility of objects like bookshelves or seating arrangements.

[0102] User preferences may comprise images that capture an area with functionality or aesthetics highlighting the user’s preference, thereby incorporating specific desires or requirements into the camera angle imagery. By balancing coverage, detail, and user preferences, a detailed and meaningful representation of the 3D scene can be provided. The result is camera angle imagery that caters to both practical and personal dimensions

[0103] P33240533of the space. Thereby, the alterations may be implemented in locations which are important for the above stated reasons.

[0104] Turning to Fig. 4, various imagery, method steps, and functional elements of the method are depicted. In this particular example the camera angle imagery 32 comprises two images 33a, 33b. The camera angle imagery 32 shows a carpet, a window, and a painting. Although in the figure, the images 33a, 33b have slight variations, i.e. the blinds are visible in image 33b, the imagery 32 typically depict an identical scene.

[0105] The camera angle imagery 32 is then provided to a generative Al model 22. The generative Al model 22 in turn makes one or more alterations to the images 32. In this way, the generative Al model 22 generates updated imagery 36 comprising at least one updated image 37. Each updated image 37 in the updated imagery 36 comprises one or more alterations to the images 33a, 33b of the camera angle imagery 32. Here, the generative Al model 22 generates three updated images for the image 33 a, and one updated image 37 for the other image 33b. However, the skilled person realizes that the generative Al model 22 could create any number of updated images 37, including none, for a specific image 33, but no less than one updated image 37 in total. That is to say, a specific image 33 may be ignored, whereby no updated image 37 is created based on the image 33, however this cannot be true for all images 33. At least one updated image 37 is generated.

[0106] The generative Al model 22 may comprise one or more models. It is thus understood that the generative Al model 22 is not limited to a single model. A single generative Al model 22 can be a complex system integrating multiple specialized Al components. These components could handle different aspects of image generation. For instance, one model could focus on object localization, another model might generate textures, while a third model could manage lighting conditions. The skilled person will recognize this architectural flexibility and it can allow for diverse implementation strategies.

[0107] The generative Al model 22 may be provided by a third party, for instance accessible via an API from a third-party provider. Alternatively, it could be a custom-developed proprietary model, for example designed specifically for furnishing

[0108] P33240533suggestions. A combination of these models is also possible using a hybrid approach where parts of the model 22 could be proprietary and other parts could integrate third-party services. For example, a base image generation might use a commercial API, and a proprietary module could then refine the output based on specific design rules.

[0109] As seen in Fig. 4, the updated images 37 comprises one or more alterations to the images 33a, but none for the image 33b. For example, different types of couches, side tables, carpets, and paintings are added to some of the updated images 37. The generative Al model 22 may also remove objects from the images 33a, 33b.

[0110] The updated imagery 36 is then mapped on the 3D scene according to teachings discussed above, followed by the step 140 of overlaying, and optionally the step 145 of merging. As can be seen in the figure, the updated images 37 comprise various alterations. Some alterations (such as the side table in two images) may be more common than others. In areas of overlap of the updated imagery, the merging step 145 takes this into account by applying a statistical method. This entails selecting one or more alterations in the area of overlap as a most prominent alteration, based on a statistical method. The statistical method may be a majority vote method, wherein the majority vote method comprises determining the number of times an alteration is depicted in the updated imagery.

[0111] Determining the number of times an alteration is depicted, and thereby the majority vote method, may comprise an order of selection. The order of selection means that the object may be selected according to more specific or more broader descriptions.

[0112] For example, using the carpet depicted in the figure, three different carpets have been selected, one striped (carpet in top image 37), one darkened (carpet in second and third images 37 from the top) and one without any pattern (carpet in bottom image 37). The majority vote may thus in a first order select a carpet as the type of the most prominent alteration. In a second order, the object color may be analyzed, wherein a darker color has been generated twice, as opposed to only once for the without any pattern or striped varieties. The most prominent alteration is thus a carpet with a dark color.

[0113] In a further example not shown, the updated imagery 36 may comprise four white couches, three green lamps and two red lamps. Depending on the order of

[0114] P33240533selection, different alterations may be chosen as the most prominent alteration. In a first example, the type is selected first. As there are five lamps in total, and four couches, lamps are selected as the most prominent alteration. Thereafter, color is decided upon, wherein the green lamps are chosen as the most prominent alteration.

[0115] In an alternative example, color is chosen first in the order of selection.

[0116] Therefore, the white couch is selected as the most prominent alteration. In some examples where alternative alterations are stored, only the alterations of the same type are stored as alternatives.

[0117] In yet an alternative example, one or more other alteration types are stored as alternatives.

[0118] The order of selection may be dependent on a number of parameters. Thereby, the method comprises determining the order of selection based on a geographical location, user preference input, user purchase input, and 3D scene data of a user.

[0119] Based on the mapping 140, updated 3D scene data is generated at step 150. The updated 3D scene data comprises the one or more alterations that were generated by the generative Al model 22, and optionally selected in the merging step 145.

[0120] The updated 3D scene 16, comprising furnishing suggestions in the form of the alterations (in some cases the most prominent alterations), may then be presented to a user. The updated 3D scene 16 thus comprises one or more alternative objects 18.

[0121] To put it all together, camera angle imagery 32 was generated with two different view perspectives. One of the images 33a is from a user view perspective, and one 33b is from a perspective view. The images were fed to the generative Al model 22. The generative Al model 22 generated a side table presented in two images, a couch presented in two images, a poster generated in three images, and three forms of carpets, wherein one form of carpet was presented twice. It may be noted that one of the carpets in the updated imagery 37 is the same as in the images 32, remaining as a white carpet. This situation may arise when an alteration is made that is identical or very similar to the original scene. However, the alteration is treated in the same way as other alterations in the updated imagery 37. The updated imagery was mapped back to the updated 3D scene, and a statistical method was employed to determine the most prominent alterations in areas of overlap. Thus, in the updated 3D scene 16, the updated image 37

[0122] P33240533comprises a window 18-1 with added curtains, a poster 18-2, a side table 18-3, a carpet 18-4 and a couch 18-5.

[0123] Fig. 5 depicts examples of updated imagery with one or more alterations 19 in the form of additions and / or removals. The updated imagery contains two images. The top image comprises a window 19-1 with curtains, a poster 19-2, a side table 19-3 and a dark patterned carpet 19-4. The lower image likewise comprises a window 19-1, but without curtains. It further comprises an identical poster 19-2 and a carpet without any pattern.

[0124] In some cases, alterations (such as the dark carpet 19-4 in the top image and the non-pattemed carpet 19-4 in the lower image) overlap, and their presence result in the statistical method being unable to determine what is the most preferable alteration. This is referred to as alterations of equal importance. The method may search the aforementioned predetermined collection for a 3D object similar to either alteration of equal importance according to the statistical method. The 3D object with highest similarity score to either carpet 19-4 is selected to be placed into the updated 3D scene data.

[0125] In an alternative embodiment, 3D objects corresponding with highest similarity score to each alteration of equal importance is selected as alternatives to be presented to the user.

[0126] In yet another alternative embodiment, one of the carpets 19-4 is selected as the most preferable alteration 19 in the area of overlap based on a predefined rule. For example, the rule may be a preference rule, wherein the choice of alteration as a most preferable alteration is further based on the user preference mentioned above.

[0127] Approaches described herein translate a physical indoor user environment into a visualizable 3D scene with actionable furnishing suggestions that take spatial and semantic relations of the indoor environment and objects into account. Technical contributions are facilitated through the use of the generative Al model that analyzes and alters imagery based on specific view perspectives, which are then mapped onto a 3D scene. This process ensures the creation of alterations that are integrated into the already existing environment, providing users with a coherent and realistic depiction of how changes would appear in their physical space. By doing so, the user’s ability to

[0128] P33240533visualize potential modifications can be enhanced. Furthermore, by virtue of the generative Al model, furnishing suggestions appropriate for the specific indoor environment (and thereby the users preferences) can be presented, thus creating, for example, an ergonomic, cost-efficient, and suitable indoor user environment, to name just a few considerations of appropriate furnishing suggestions. The use of Al-driven imagery thus enhances the furnishing such that the suggestions are logical, and indicative of the user preferences, whilst leaving room for decisions by the user.

[0129] Furthermore, a concrete technical problem is addressed — to automate the generation of furnishing suggestions in a computationally efficient manner — through the application of a generative Al model. By processing 3D scene data, the method 100 may achieve a tangible technical effect by reducing the computational time and complexity involved in generating furnishing options compared to manual methods or generic computer-based methods. The application of artificial intelligence to a solve a problem of furnishing an indoor user environment, taking into account considerations discussed above, contributes to a technical character as it improves the functioning of a system in a real-world, practical context.

[0130] With reference to Fig. 6, a schematic illustration of a (non-transitory) computer-readable (storage) medium 300 is shown according to one exemplary embodiment. The computer-readable medium 300 in the disclosed embodiment is a memory stick, such as a Universal Serial Bus (USB) stick. The USB stick 300 comprises a housing 330 having an interface, such as a connector 340, and a memory chip 320. In the disclosed embodiment, the memory chip 320 is a flash memory, i.e., a non-volatile data storage that can be electrically erased and re-programmed. The memory chip 320 stores the computer program product 310 which is programmed with computer program code (instructions) that when loaded into a processor device, will perform a method, for instance the method 100 discussed herein. The USB stick 300 is arranged to be connected to and read by a reading device for loading the instructions into the processor device. It should be noted that a computer-readable medium can also be other mediums such as compact discs, digital video discs, hard drives or other memory technologies commonly used. The computer program code (instructions) can

[0131] P33240533also be downloaded from the computer-readable medium via a wireless interface to be loaded into the processing device.

[0132] In Fig. 7, an exemplary computerized system 200 is shown. The computerized system 200 may be employed for implementing one or more of the functionalities as previously described in this disclosure. The computerized system 200 may include a number of units known to the skilled person for implementing the functionalities as described in the present disclosure. The computerized system 200 may comprise one or more computing units capable of including firmware, hardware, and / or executing software instructions to implement the functionality described herein. The computerized system 200 may comprise one or more processors (may also be referred to as a control unit) 230, one or more memories 235 and one or more buses 240. The computerized system 200 may include at least one computing device having the processor 230. A system bus 240 may provide an interface for system components including, but not limited to, the memories 235 and the processor 230. The processor 230 may include any number of hardware components for conducting data or signal processing or for executing computer code stored in the memories. The processor 230 may, for example, include a general-purpose processor, an application specific processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA), a circuit containing processing components, a group of distributed processing components, a group of distributed computers configured for processing, or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. The processor 230 may further include computer executable code that controls operation of the programmable device.

[0133] The system bus 240 may be any of several types of bus structures that may further interconnect to a memory bus (with or without a memory controller), a peripheral bus, and / or a local bus using any of a variety of bus architectures. The memories 235 may be one or more devices for storing data and / or computer code for completing or facilitating methods described herein. The memories 235 may include database components, object code components, script components, or other types of information structure for supporting the various activities herein. Any distributed or

[0134] P33240533local memory device may be utilized with the systems and methods of this description. The memories 235 may be communicably connected to the processor 230 (e.g., via a circuit or any other wired, wireless, or network connection) and may include computer code for executing one or more processes described herein. The memories may include non-volatile memories (e.g., read-only memory (ROM), erasable programmable readonly memories (EPROM), electrically erasable programmable read-only memories (EEPROM), etc.), and volatile memories (e.g., random-access memory (RAM)), or any other medium which can be used to carry or store desired program code in the form of machine-executable instructions or data structures and which can be accessed by a computer or other machine with a processor device. A basic input / output system (BIOS) may be stored in the non-volatile memories and can include the basic routines that help to transfer information between elements within the computer system.

[0135] A storage 245 may be operably connected to the computerized system 200 via, for example, VO interfaces (e.g., card, device) 250 and I / O ports 255. The storage 245 can include, but is not limited to, devices like a magnetic disk drive, a solid state drive, an optical drive, a flash memory card, a memory stick, etc. The storage 245 may also include a cloud-based server implemented using any commonly known cloudcomputing platform. The storage 245 or memory 235 can store an operating system that controls and allocates resources of the computerized system 200.

[0136] The computerized system 200 may interact with network devices 260 via the VO interfaces 250, or the I / O ports 255. Through the network devices 260, the computerized system 200 may interact with a network. Through the network, the computerized system 200 may be logically connected to remote computers. The networks with which the computerized system 200 may interact include, but are not limited to, a local area network (LAN), a wide area network (WAN), and other networks.

[0137] The operational steps described in any of the exemplary aspects herein are described to provide examples and discussion. The steps may be performed by hardware components, may be embodied in machine-executable instructions to cause a processor to perform the steps, or may be performed by a combination of hardware and software. Although a specific order of method steps may be shown or described, the order of the

[0138] P33240533steps may differ. In addition, two or more steps may be performed concurrently or with partial concurrence.

[0139] The terminology used herein is for the purpose of describing particular aspects only and is not intended to be limiting of the disclosure. As used herein, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. As used herein, the term "and / or" includes any and all combinations of one or more of the associated listed items. It will be further understood that the terms "comprises," "comprising," "includes," and / or "including" when used herein specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.

[0140] It will be understood that, although the terms first, second, etc., may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first element could be termed a second element, and, similarly, a second element could be termed a first element without departing from the scope of the present disclosure.

[0141] Relative terms such as "below" or "above" or "upper" or "lower" or "horizontal" or "vertical" may be used herein to describe a relationship of one element to another element as illustrated in the Figures. It will be understood that these terms and those discussed above are intended to encompass different orientations of the device in addition to the orientation depicted in the Figures. It will be understood that when an element is referred to as being "connected" or "coupled" to another element, it can be directly connected or coupled to the other element, or intervening elements may be present. In contrast, when an element is referred to as being "directly connected" or "directly coupled" to another element, there are no intervening elements present.

[0142] Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure belongs. It will be further understood that terms used herein should be interpreted as having a meaning consistent with their meaning in the

[0143] P33240533context of this specification and the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.

[0144] It is to be understood that the present disclosure is not limited to the aspects described above and illustrated in the drawings; rather, the skilled person will recognize that many changes and modifications may be made within the scope of the present disclosure and appended claims. In the drawings and specification, there have been disclosed aspects for purposes of illustration only and not for purposes of limitation, the scope of the inventive concepts being set forth in the following claims.

[0145] P33240533

Claims

CLAIMS1. A computer-implemented method (100) for generating furnishing suggestions, the method comprising:obtaining (110) 3D scene data of a 3D scene (12) corresponding to an indoor user environment (10);determining (120) camera angle imagery (32) of the 3D scene (12), the camera angle imagery (32) being one or more images (33) from one or more view perspectives (31) of the 3D scene (12);generating (130) updated imagery (36) based on the camera angle imagery (32) provided to a generative Al model (22), the updated imagery (36) comprising at least one updated image (37), each updated image (37) comprising one or more alterations (19) to a corresponding image (33) of the camera angle imagery (32) and depicting the same view perspective (31) as said corresponding image (33);mapping (140) the updated imagery (36) onto the 3D scene (12), the mapping (140) comprising overlaying information pertaining to the updated imagery (36) onto the 3D scene (12) from said corresponding view perspective (31) of each updated image (37);generating (150), based on the mapping (140), updated 3D scene data, the updated 3D scene data reflecting at least one of said one or more alterations (19) depicted in the updated imagery (36); andproviding (160) an updated 3D scene (16) to a user based on the updated 3D scene data.

2. The computer-implemented method (100) of claim 1, wherein an alteration (19) is an addition and / or removal of one or more objects to said corresponding image (33).

3. The computer-implemented method (100) of claim 2, wherein the generating (150) comprises generating (155) one or more 3D objects based on the alteration (19)P33240533being said addition, each 3D object comprising pose data in relation to the 3D scene (12).

4. The computer-implemented method (100) of any preceding claim, further comprising adding (115) one or more 3D objects to the 3D scene (12) prior to determining (120) the camera angle imagery (32), each 3D object (18) comprising pose data in relation to the 3D scene (12).

5. The computer-implemented method (100) of claim 3 and 4, wherein said 3D objects (18) from said generating (155) and 3D objects from said adding (115) are obtained from the same predetermined collection of 3D objects.

6. The computer-implemented method (100) of claim 5, wherein the step of generating (130) updated imagery comprises feeding data of 3D objects in the predetermined collection of 3D objects to the generative Al model (22).

7. The computer-implemented method (100) of any preceding claim, wherein the step of generating (130) updated imagery (36) further comprises feeding a steering input to the generative Al model (22), the steering input comprising one or more of a geographical location, user preference input, user purchase input, and 3D scene data of a user.

8. The computer-implemented method (100) of any preceding claim, wherein the 3D scene (12) is obtained from one or more of a sketch, floorplan, imagery, a user-created 3D scene, a voice prompt or a text prompt.

9. The computer-implemented method (100) of any preceding claim, wherein in response to said overlaying causing an overlap, the mapping (140) further comprises merging (145) by selecting one or more alterations (19) in an area of overlap as a most prominent alteration based on a statistical method.P3324053310. The computer-implemented method (100) of claim 9, wherein the statistical method is a majority vote method, the majority vote method comprising determining the amount of times a type of alteration (19) is depicted in the updated imagery (36).

11. The computer-implemented method (100) of claim 10, wherein the majority vote method further comprises an order of selection, wherein the order of selection comprises a selection of one or more of an object type, object color, object style, object placement, and object pose.

12. The computer-implemented method (100) of the preceding claims, wherein the method (100) further comprises obtaining one or more of a geographical location, user preference input, user purchase input, and 3D scene data of a user, and wherein the order of selection is further based on the user input.

13. The computer-implemented method (100) of any preceding claim, wherein each image (33) in the camera angle imagery (32) depicts a unique view perspective (31), and wherein the number of images (33) is based on the size of the indoor user environment (10).

14. The computer-implemented method (100) of any preceding claim, wherein determining (120) the camera angle imagery (32) comprises determining view perspectives (31) dynamically determined based on predefined rules.

15. The computer-implemented method (100) of claim 14, wherein the view perspectives (31) are further determined based on layout of the 3D scene (12), items determined as present in the 3D scene (12) and / or dimensions of the 3D scene (12).

16. The computer-implemented method (100) of claim 15, wherein the dynamic determination of view perspectives (31) comprises analysing the 3D scene (12) to identify viewpoints with respect to at least one of a: coverage, detail, user preference, and positioning one or more virtual cameras at said identified viewpoints.P3324053317. The computer-implemented method (100) of any of claims 15-16, wherein the dynamic determination of view perspectives (31) comprises determining viewpoints such that the entirety of the 3D scene (12) is depicted in the camera angle imagery (32).

18. A computerized system (200) comprising a processor (230) configured to carry out the functionality of the computer-implemented method (100) of any of claims 1-17.

19. A computer program product comprising computer code for performing the functionality of the computer-implemented method (100) of any of claims 1-17.

20. A computer readable storage medium (200) comprising instructions, which when executed by one or more processors (230) of a computer-implemented system (200), cause the processor (230) to perform the functionality of the method (100) of any of claims 1-17.P33240533