WO2018070766A1 - 콘텐츠 출력 방법 및 이를 지원하는 전자 장치 - Google Patents
콘텐츠 출력 방법 및 이를 지원하는 전자 장치 Download PDFInfo
- Publication number
- WO2018070766A1 WO2018070766A1 PCT/KR2017/011163 KR2017011163W WO2018070766A1 WO 2018070766 A1 WO2018070766 A1 WO 2018070766A1 KR 2017011163 W KR2017011163 W KR 2017011163W WO 2018070766 A1 WO2018070766 A1 WO 2018070766A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- content
- selected content
- processor
- electronic device
- property
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4431—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB characterized by the use of Application Program Interface [API] libraries
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/003—Navigation within 3D models or images
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
- H04N21/4351—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream involving reassembling additional data, e.g. rebuilding an executable program from recovered modules
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/44008—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/816—Monomedia components thereof involving special video data, e.g 3D video
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/04—Indexing scheme for image data processing or generation, in general involving 3D image data
Definitions
- Embodiments disclosed herein relate to content output techniques based on content attributes.
- wearable electronic devices so-called wearable devices, which support various function operations by interworking with the smart phones, have been proposed.
- the wearable device may support organic fusion between humans and technology in various fields.
- a wearable device such as a head mounted display (HMD) or smart glasses may have a stereoscopic effect such as virtual reality (VR) or augmented reality (AR) on a user's watch. It provides content and meets the diverse demands of users.
- VR virtual reality
- AR augmented reality
- an output mode eg, 2D mode, 3D mode, 360 degree mode, etc.
- the property of the content eg, 2D content, 3D content, or 360 degree content
- User control may be required.
- the user control or the processing for the user control may inhibit the immersion of the content viewing, or may cause the user's experience to be interrupted.
- Various embodiments of the present disclosure may provide a content output method and an electronic device supporting the same, which may minimize the limitation of the easy operation of the VR system or the viewing of the content by supporting the output of the content optimized for the property of the content. .
- an electronic device may include a memory configured to store a housing, at least one content, and at least one application related to an output of the content, a display and the memory exposed through an area of the housing and displaying the content; It may include a processor electrically connected to the display.
- the processor determines at least a part of attributes based on whether at least one condition specified for the content selected by the input is satisfied, and if it is determined that the attributes are related to the VR content,
- the selected content may be output based on execution of an application related to output.
- immersion in content viewing may be improved through optimization of the VR system.
- FIG. 1 is a diagram illustrating an operation environment of an electronic device according to an embodiment of the present disclosure.
- FIG. 2 is a diagram illustrating a configuration of an electronic device according to an embodiment of the present disclosure.
- 3A is a diagram illustrating a form of content attribute determination according to the first embodiment.
- 3B illustrates another form of content property determination according to the first embodiment.
- 3C is a diagram illustrating another form of content property determination according to the first embodiment.
- FIG. 4 is a diagram illustrating a form of content attribute determination according to a second embodiment.
- FIG. 5 is a diagram illustrating a form of content attribute determination according to a third embodiment.
- FIG. 6 is a diagram illustrating a form of content attribute determination according to a fourth embodiment.
- FIG. 7 is a diagram illustrating a form of content property determination according to a fifth embodiment.
- FIG. 8 is a diagram illustrating a form of content attribute determination according to the sixth embodiment.
- FIG. 9 is a diagram illustrating a form of content attribute determination according to a seventh embodiment.
- FIG. 10 is a diagram illustrating a content attribute determination according to an eighth embodiment.
- FIG. 11 is a view illustrating a content output method of an electronic device according to an embodiment of the present disclosure.
- FIG. 12 is a block diagram of an electronic device according to an embodiment of the present disclosure.
- FIG. 13 is a block diagram of a program module according to an exemplary embodiment.
- expressions such as “have”, “may have”, “include”, or “may contain” include the presence of a corresponding feature (e.g., numerical, functional, operational, or component such as a component). Does not exclude the presence of additional features.
- expressions such as “A or B”, “at least one of A or / and B”, or “one or more of A or / and B” may include all possible combinations of items listed together.
- “A or B”, “at least one of A and B”, or “at least one of A or B” includes (1) at least one A, (2) at least one B, Or (3) both of cases including at least one A and at least one B.
- first,” “second,” “first,” or “second,” as used herein may modify various components, regardless of order and / or importance, and may modify one component to another. It is used to distinguish a component and does not limit the components.
- the first user device and the second user device may represent different user devices regardless of the order or importance.
- the first component may be called a second component, and similarly, the second component may be renamed to the first component.
- One component (such as a first component) is "(functionally or communicatively) coupled with / to" to another component (such as a second component) or " When referred to as “connected to”, it should be understood that any component may be directly connected to the other component or may be connected through another component (eg, a third component).
- a component e.g., a first component
- another component e.g., a second component
- the expression “configured to” used in this document is, for example, “suitable for”, “having the capacity to” depending on the situation. It may be used interchangeably with “designed to”, “adapted to”, “made to”, or “capable of”.
- the term “configured to” may not necessarily mean only “specifically designed to” in hardware. Instead, in some situations, the expression “device configured to” may mean that the device “can” along with other devices or components.
- the phrase “processor configured (or set up) to perform A, B, and C” may execute a dedicated processor (eg, an embedded processor) to perform the operation, or one or more software programs stored in a memory device. By doing so, it may mean a general-purpose processor (for example, a CPU or an application processor) capable of performing the corresponding operations.
- An electronic device may include, for example, a smartphone, a tablet personal computer, a mobile phone, a video phone, an e-book reader, Desktop PCs, laptop PCs, netbook computers, workstations, servers, personal digital assistants, portable multimedia players, MP3 players, mobile medical devices, It may include at least one of a camera or a wearable device.
- a wearable device may be an accessory type (for example, a watch, a ring, a bracelet, an anklet, a necklace, glasses, a contact lens, or a head-mounted-device (HMD)), a fabric, or a clothing type (for example, it may include at least one of an electronic garment, a body attachment type (eg, a skin pad or a tattoo), or a living implantable type (eg, an implantable circuit).
- HMD head-mounted-device
- the electronic device may be a home appliance.
- Home appliances are, for example, televisions, digital video disk players, audio, refrigerators, air conditioners, cleaners, ovens, microwave ovens, washing machines, air cleaners, set-top boxes, home automation Home automation control panel, security control panel, TV box (e.g. Samsung HomeSync TM, Apple TV TM, or Google TV TM), game console (e.g. Xbox TM, PlayStation TM), electronics It may include at least one of a dictionary, an electronic key, a camcorder, or an electronic picture frame.
- the electronic device may include various medical devices (eg, various portable medical measuring devices (such as blood glucose meters, heart rate monitors, blood pressure monitors, or body temperature meters), magnetic resonance angiography (MRA), magnetic resonance imaging (MRI), Computed tomography (CT), cameras, or ultrasounds), navigation devices, satellite navigation systems (GNSS (Global Navigation Satellite System)), event data recorders (EDRs), flight data recorders (FDRs), automotive infotainment ) Devices, ship's electronic equipment (e.g.
- Point of sales point of sales, or Internet of things (e.g. light bulbs, sensors, electricity or gas meters, sprinkler devices, fire alarms, thermostats, street lights, It may include at least one of (toaster), exercise equipment, hot water tank, heater, boiler.
- things e.g. light bulbs, sensors, electricity or gas meters, sprinkler devices, fire alarms, thermostats, street lights, It may include at least one of (toaster), exercise equipment, hot water tank, heater, boiler.
- an electronic device may be a furniture or part of a building / structure, an electronic board, an electronic signature receiving device, a projector, or various measuring devices (eg, Water, electricity, gas, or radio wave measuring instrument).
- the electronic device may be one or a combination of the aforementioned various devices.
- An electronic device according to an embodiment may be a flexible electronic device.
- the electronic device according to an embodiment of the present disclosure is not limited to the above-described devices, and may include a new electronic device according to technology development.
- the term user may refer to a person who uses an electronic device or a device (eg, an artificial intelligence electronic device) that uses an electronic device.
- FIG. 1 is a diagram illustrating an operation environment of an electronic device according to an embodiment of the present disclosure.
- the electronic device 100 may interact with various external devices in connection with the operation of the VR system.
- the electronic device 100 may establish a network with an external device such as a head mounted display (HMD) 1 or smart glasses 2.
- the electronic device 100 may connect to the network by performing wired or wireless communication to transmit or receive content data with the external device.
- HMD head mounted display
- the electronic device 100 may be mounted and operated on the HMD device 1.
- the electronic device 100 may be mounted and removed from the front region of the HMD device 1, for example, based on a fastening member (eg, a hook, a band, or a screw) provided in the HMD device 1.
- the electronic device 100 may be included in the HMD device 1 or may be physically integrated with the HMD device 1 to operate.
- VR content eg, an image or an image
- displayed on the display area of the electronic device 100 may be displayed on a watch of a user wearing the HMD device 1 through a lens assembly mounted on the HMD device 1. have.
- the view switching for the VR content may correspond to the body (eg, head) movement of the user of the HMD device 1.
- the electronic device 100 may be functionally paired with the smart glasses 2.
- VR content including a 3D property may be displayed.
- the electronic device 100 may alternately display VR content having a 3D attribute in the form of left eye content and right eye content corresponding to both eyes of the user.
- the electronic device 100 is connected to the smart glasses 2 such that a shutter mounted on the smart glasses 2 is selectively opened and closed in correspondence with the left eye content and the right eye content.
- the synchronization signal or the control signal can be transmitted.
- the external device is not limited to the above-described HMD device 1 or smart glasses 2, and various platforms capable of building or supporting a VR system through interaction with the electronic device 100. It may include.
- FIG. 2 is a diagram illustrating a configuration of an electronic device according to an embodiment of the present disclosure.
- the electronic device 100 may establish a network 4 with the external device 5 or the server 6 to be electrically or communicatively connected.
- the external device 5 may include at least one of the HMD device 1 or the smart glasses 2 described above with reference to FIG. 1.
- the server 6 may, for example, support downloading or streaming of at least one content to the electronic device 100.
- the electronic device 100 may include a memory 110, a display 120, a communication interface 130, a camera module 140, a processor 150, and an input / output interface 160. According to an embodiment of the present disclosure, the electronic device 100 may omit at least one of the above-described components or additionally include other components.
- the memory 110 may store at least one content displayed on the display 120.
- the memory 110 may download or stream from a separate external device (or server) or store content (eg, an image or an image) photographed by the camera module 140.
- the memory 110 may include at least one program.
- the program may include an application program 111, a kernel 113, middleware 115, or an application programming interface (API) 117. At least a portion of the kernel 113, middleware 115, or API 117 may be referred to as an operating system (OS).
- OS operating system
- the application program 111 (or a graphic user interface according to the execution of the application program 111) may include, for example, at least one content.
- the application program 111 may include at least one player based on the property of the content (or corresponding to the property of the content).
- one or more application programs 111 may be included in the memory 110.
- the kernel 113 may include system resources (eg, the memory 110 or other components) involved in executing an operation or function implemented in other programs (eg, the application program 111, the middleware 115, or the API 117). Processor 150, etc.) may be controlled or managed.
- the kernel 113 may provide an interface for the application program 111, the middleware 115, or the API 117 to access individual components of the electronic device 100 to control or manage system resources.
- the middleware 115 may play an intermediary role so that the application program 111 or the API 117 may communicate with the kernel 113 to transmit or receive data.
- the middleware 115 may process at least one work request received from the application program 111 according to priority.
- the middleware 115 may give priority to the use of system resources (eg, the memory 110 or the processor 150, etc.) of the electronic device 100 to at least one of the application programs 111. have.
- the middleware 115 may perform scheduling or load balancing on the at least one work request according to the priority.
- the API 117 is an interface for the application program 111 to control a function provided by the kernel 113 or the middleware 115.
- the API 117 may include at least a file control, window control, image processing, or character control. It can contain one interface or function (eg command).
- memory 110 may include volatile memory (eg, dynamic RAM (DRAM), static RAM (SRAM), or synchronous dynamic RAM, etc.), nonvolatile memory (eg, one time programmable ROM (OTPROM), Or at least one of a programmable ROM (PROM), an erasable and programmable ROM (EPROM) or an electrically erasable and programmable ROM (EPEROM), a mask ROM, a flash ROM, or a flash memory.
- volatile memory eg, dynamic RAM (DRAM), static RAM (SRAM), or synchronous dynamic RAM, etc.
- nonvolatile memory eg, one time programmable ROM (OTPROM), Or at least one of a programmable ROM (PROM), an erasable and programmable ROM (EPROM) or an electrically erasable and programmable ROM (EPEROM), a mask ROM, a flash ROM, or a flash memory.
- PROM programmable ROM
- EPROM era
- the display 120 may output or display various types of content (eg, text, images, videos, icons, or symbols).
- the display 120 may display at least one content stored in the memory 110 under the control of the processor 150.
- the display 120 may display at least one content streamed from the server 6 in real time.
- the display 120 may include a liquid crystal display (LCD), a light-emitting diode (LED) display, an organic LED (OLED) display, microelectromechanical systems MEMS) displays or electronic paper displays.
- the display 120 may include a touch screen display, and based on the touch screen display, for example, a touch, gesture, proximity, or hovering using a part of the user's body (for example, a finger) or an electronic pen, or the like. An input can be received.
- the communication interface 130 may establish communication between the electronic device 100 and the external device 5 or the server 6.
- the electronic device 100 may perform wireless or wired communication with the external device 5 or the server 6 by accessing the network 4 based on the communication interface 130.
- the network 4 may include at least one of a computer network (eg, LAN or WAN), the Internet, or a telephone network.
- the wireless communication is a cellular communication protocol, and includes Long-Term Evolution (LTE), LTE-Advanced (LTE-A), Code Division Multiple Access (CDMA), Wideband CDMA (WCDMA), and Universal Mobile Telecommunications (UMTS).
- LTE Long-Term Evolution
- LTE-A LTE-Advanced
- CDMA Code Division Multiple Access
- WCDMA Wideband CDMA
- UMTS Universal Mobile Telecommunications
- System WiBro (Wireless Broadband) or GSM (Global System for Mobile Communications) may include at least one.
- wireless communication may include short-range communication such as wireless fidelity (Wi-Fi), Bluetooth, near field communication (NFC), or magnetic stripe transmission (MST).
- Wi-Fi wireless fidelity
- NFC near field communication
- MST magnetic stripe transmission
- the electronic device 100 may generate content in addition to content downloaded or streamed from a separate external device (or a server).
- the electronic device 100 may include at least one camera module 140.
- the at least one camera module 140 may be disposed in the electronic device 100 to capture an image (for example, a still image or a video) of different directions or regions.
- the at least one camera module 140 may be disposed on the electronic device 100 to photograph an area divided by 120 degrees.
- the at least one camera module 140 may be disposed at positions opposite to the electronic device 100 to photograph the front and the rear of the electronic device 100.
- the at least one camera module 140 may be fixed at a designated point in the electronic device 100 or may be at least partially movable to change a photographing direction (or a photographing area) in response to user control. According to various embodiments of the present disclosure, the image photographed by the at least one camera module 140 may be implemented as VR content under the editing (eg, stitching) of the processor 150 and stored in the memory 110. .
- the processor 150 may be electrically or functionally connected to at least one other component of the electronic device 100 to perform control, communication operation, or data processing on the component.
- the processor 150 may analyze data about the activated (or output-commanded) content in response to user control or designated scheduling information.
- the processor 150 may analyze tag information or URL information about the content.
- the processor 150 may analyze the stored file name information.
- the processor 150 may determine whether at least one condition specified as part of data analysis on the content is satisfied. . This will be described with reference to FIGS. 3A to 10 to be described later.
- the processor 150 may determine the property of the activated content based on a result of the data analysis or a result of determining whether the condition is satisfied.
- the processor 150 may determine the activated content as VR content.
- the processor 150 constructs a database of the determined VR content as a database and stores the information in the memory 110 so as to be stored in the electronic device 100 or at least one streamed from the external device 5 or the server 6.
- the VR content may be separately managed among contents.
- the processor 150 may identify a player that matches the property (eg, 2D, 3D SBS, 3D TB, or 360 degrees) of the VR content.
- the processor 150 executes a player corresponding to an attribute of the output mode (VR content) of the specific application program 111 including the identified player among the at least one application program 111 stored in the memory 110. Mode)) can be controlled.
- the processor 150 may control to process an output of the VR content by executing an application program (or an output mode) including a 3D player.
- the input / output interface 160 may transfer a command or data input from a user or another external device to other components of the electronic device 100. Alternatively, the input / output interface 160 may output a command or data received from another component of the electronic device 100 to a user or another external device.
- an attribute of the content is not determined through the analysis of data (eg, tag information, URL information, file name information, etc.) of activated (or output-commanded) content or when the determined property is reconfirmed.
- data eg, tag information, URL information, file name information, etc.
- various embodiments of determining an attribute of content based on whether at least one specified condition for the activated content is satisfied and controlling an output according to the determined content attribute will be described.
- 3A, 3B, and 3C illustrate various forms of content property determination according to the first embodiment.
- the processor 150 of FIG. 2 of the electronic device 100 of FIG. 2 may extract a main frame by analyzing each of at least one frame for the activated (or output-commanded) content. .
- the processor 150 generates an object (or object) for each frame constituting the content based on image processing such as, for example, an edge detection filter or an active contours model. Can be detected.
- the processor 150 may designate one of the at least one frame in which a relatively large number of objects of a specified size or more is detected as the main frame.
- the processor 150 analyzes pixel information of the first to fourth regions 310, 320, 330, and 340 on the main frame 10 of the activated (or output-commanded) content. can do.
- the processor 150 may analyze a color value (eg, an RGBA value) for each of the plurality of pixels included in the first area 310.
- the processor 150 may compare the color values of the plurality of pixels included in the first area 310 with each other to determine whether a match is equal to or greater than a specified ratio.
- the processor 150 may analyze pixel information in the same or similar manner as the first region 310 described above with respect to the second region 320.
- the processor 150 may generate a color value of pixels corresponding to the same Y coordinate (or the same height) between the mutual regions 330 and 340 by more than a specified ratio. It can be determined whether they match.
- the processor 150 may determine whether the VR content having the 360 degree property is applicable by performing the pixel information analysis (or color value analysis) on the activated content.
- the main frame 10 may be mapped to, for example, a three-dimensional sphere object 20.
- each of the first region 310 and the second region 320 of the main frame 10 may correspond to the upper pole region and the lower pole region of the spherical object 20.
- the third region 330 and the fourth region 340 of the main frame 10 may be in contact with each other on any spherical surface region of the spherical object 20.
- the processor 150 may match the color value between the plurality of pixels included in the first region 310 and the color value between the plurality of pixels included in the second region 320 by more than a specified ratio, When the color values of the pixels corresponding to the same Y coordinate (or the same height) match between the third area 330 and the fourth area 340 by more than a specified ratio, the content including the main frame 10 is displayed. It can be determined as VR content with a 360 degree property.
- VR content with 360 degree attributes may be mapped to various polyhedral objects as well as the spherical object 20.
- the main frame 11 of the content may be mapped to the cube object 30.
- the first region 350 and the second region 360 on the main frame 11 may be adjacent to or adjacent to each other at an edge region of the cube object 30 to be mapped.
- the processor 150 may include the main frame 11 when the color values of the pixels corresponding to the same Y coordinate (or the same height) between the first region 350 and the second region 360 are equal to or greater than a specified ratio.
- the content may be determined as VR content having a 360 degree property.
- the main frame 12 of the content may be mapped to the triangular pyramid object 40.
- the processor 150 may analyze pixel information about the first area 370 and the second area 380 of the main frame 12 that are adjacent to or adjacent to any corner area of the triangular pyramid object 40.
- the processor 150 may include the main frame 12 when the color values of the pixels corresponding to (or adjacent to or adjacent to) the first region 370 and the second region 380 are equal to or greater than a mutually specified ratio.
- the content may be determined as VR content having a 360 degree property.
- the object to which the VR content may be mapped is not limited to the above-described sphere object 20, cube object 30, or triangular pyramid object 40, and various shapes of objects may be applied.
- mapping a VR object having a 360 degree attribute to the spherical object 20 will be described as an example.
- FIG. 4 is a diagram illustrating a form of content attribute determination according to a second embodiment.
- the main frame 10 of activated (or output ordered) content may include any length ratio with respect to the transverse direction (w) and the longitudinal direction (h).
- VR content having a 360 degree attribute may be mapped to a sphere object 20.
- each of the upper region (eg, the first region 310 of FIG. 3A) and the lower region (eg, the second region 320 of FIG. 3A) of the 360-degree VR content may be the upper pole ( Since the width corresponds to the pole region and the lower pole region, the width w of the 360-degree VR content may be mapped to surround the sphere object 20.
- the length in the lateral direction w of the main frame 10 corresponds to the circumferential length of the spherical object 20
- the length in the longitudinal direction h corresponds to the circumferential length of the spherical object 20. For half length.
- the processor of the electronic device 100 of FIG. 2 may have a ratio of a length ratio of the main frame 10 to the transverse direction w and the longitudinal direction h as described above.
- the content including the main frame 10 may be determined as VR content having a 360 degree property.
- FIG. 5 is a diagram illustrating a form of content attribute determination according to a third embodiment.
- the horizontal straight line existing in the VR content of the 360-degree property is at least partially curved. It can be transformed into.
- the processor of the electronic device 100 of FIG. 2 may perform image processing (eg, contour detection filter) on the main frame 10 of activated (or output-commanded) content. By performing an active contour model, etc., at least one curve C1 and / or C3 having a predetermined size or more may be extracted.
- the processor 150 may assign a virtual boundary that bisects the main frame 10 in the longitudinal direction on the main frame 10.
- the processor 150 may overlap or project the cross section 21 of the spherical object on one of the left region and the right region (eg, the left region) of the main frame 10 divided by the longitudinal boundary line. have.
- the processor 150 may compare the curvature of the extracted at least one curve C1 and / or C3 with at least a portion (eg, 22) of an outline of the cross section 21 of the sphere object. If the property of the content including the main frame 10 is 360 degrees, the main frame 10 is mapped to an old object (for example, 20 of FIG. 3A), and thus the curves C1 and C in the main frame 10 may be mapped. And / or the curvature for C3) may be less than the curvature for the outline of the sphere object cross-section 21.
- the processor 150 displays the content including the main frame 10. It can also be determined as the VR content of the attribute.
- FIG. 6 is a diagram illustrating a form of content attribute determination according to a fourth embodiment.
- the processor of the electronic device 100 of FIG. 2 may have main frame 10 in the same or similar manner as described above with reference to FIG. 5 (eg, image processing). It is possible to extract at least one curve C1, C2, C3 and / or C4 above a specified size present in it.
- the processor 150 may give a virtual boundary that bisects the main frame 10 in the lateral direction on the main frame 10.
- the upper area of the main frame 10 is based on a spherical boundary, and the upper area of the spherical object 10 (eg, 20 in FIG. 3A). Mapped to the hemisphere, the lower region may be mapped to the lower hemisphere. According to this, at least one curve existing in the upper region of the transverse boundary line is refracted in the upper direction with respect to the transverse boundary line, and at least one curve in the lower region of the transverse boundary line in the lower direction. Can be refracted by.
- the processor 150 may analyze the refraction direction with respect to each of the at least one curve C1, C2, C3 and / or C4 extracted in the main frame 10.
- the processor 150 may determine a relative position between the extracted at least one curve C1, C2, C3 and / or C4 and a horizontal boundary line dividing the main frame 10.
- the processor 150 may have more curves refracted in the upper direction in the upper region of the lateral boundary line relative to curves refracted in the lower direction, or may be lower in the lower region of the lateral boundary line.
- the content including the main frame 10 may be determined as VR content having a 360 degree property.
- FIG. 7 is a diagram illustrating a form of content property determination according to a fifth embodiment.
- At least one lateral straight line included in the VR content of the 360-degree attribute is at least partially curved in relation to the mapping between the VR content and the sphere object (eg, 20 in FIG. 3A). C1).
- the longitudinal straight line included in the VR content of the 360-degree attribute may be mapped to the spherical object 20 while maintaining its original shape.
- the transverse straight line may be transformed into a curve and the longitudinal straight line may not be deformed separately in the VR content of the 360-degree attribute.
- the processor of the electronic device 100 of FIG. 2 is configured to perform image processing (eg, an edge detection filter or the like) on the main frame 10 of the activated (or ordered output) content. Active contour model, etc.) to extract at least one longitudinal straight line S1, S2 and / or S3 and a transverse straight line having a specified size or more.
- the processor 150 may calculate the quantity of each of the extracted at least one longitudinal straight line S1, S2 and / or S3 and the transverse straight line.
- at least a part of the horizontal straight line included in the VR content of the 360-degree property is transformed into a curved shape (eg, C1), so that the processor 150 may extend the vertical straight line S1, in the main frame 10.
- the content including the main frame 10 may be determined as the VR content having a 360 degree property.
- a processor (150 of FIG. 2) of the electronic device 100 of FIG. 2 may differ from each other with respect to content attribute determination conditions according to the first to fifth embodiments described above with reference to FIGS. 3A through 7. Specific gravity can be given.
- the processor 150 assigns a high level weighting value to a condition in which the accuracy of the basis of determination or the reliability of the determination result is relatively high among the content attribute determination conditions, and the sequential level is applied to other conditions. Weighting values can be assigned.
- a criterion for the accuracy of the determination basis or the reliability of the determination result may be set by the user or may be preset on the electronic device 100 as VR system operation information.
- the processor 150 may sequentially perform the content property determination according to the first to fifth embodiments described above in the order of the conditions to which the weighting value is assigned. In this operation, for example, prior to performing all of the content attribute determination according to the first to fifth embodiments, weighted summation is specified for at least one condition in which the activated (or output-commanded) content is satisfied. It can be above the threshold. In this case, the processor 150 may determine whether the content of the activated content is satisfied after the content property determination is not performed, and determine the property of the activated content by 360 degrees.
- the processor 150 may identify a player that matches the attribute of the activated content at the same time as the attribute determination of the activated (or output ordered) content or within a specified time from the determination.
- the processor 150 may identify a specific application program (hereinafter, referred to as a first application) including an identified player (or an output mode (a mode for executing a player corresponding to an attribute of VR content)).
- the processor 150 may control the display (120 of FIG. 2) to output at least one display object related to the execution of the first application.
- the display object is, for example, an interface provided to allow a user to control the execution of the first application, and may include an icon, a button, a tap, or the like for controlling the execution of the first application.
- the processor 150 may simultaneously output the display object through the first application (or a player included in the first application) on at least a portion of the display 120 region at a predetermined time difference. Alternatively, at least one of a thumbnail image or a preview image of the reproduced content may be output. In one embodiment, when the user applies an input to an icon, a button, or a tab included in the display object, or applies an input to at least one of the thumbnail image or the preview image, the processor 150 may respond to the user input. The execution of the first application may be controlled. The processor 150 may process the output of the activated content based on the first application (or a player included in the first application).
- FIG. 8 is a diagram illustrating a form of content attribute determination according to the sixth embodiment.
- the VR content of the 3D attribute may include left eye content and right eye content corresponding to both eyes of the user with respect to binocular parallax implementation. Accordingly, the VR content of the 3D attribute may include a boundary line for distinguishing the left eye content and the right eye content.
- the boundary line may be configured in the longitudinal direction (eg, 3D SBS format) or in the transverse direction according to the shape of the 3D attribute (eg, 3D TB format).
- the processor of the electronic device 100 of FIG. 2 may perform image processing (eg, contouring) on the main frame 10 of activated (or output-commanded) content.
- a detection filter or an active contour model may be used to extract a straight line having a specified size or length.
- the straight line may, for example, comprise a longitudinal or transverse straight line.
- the processor 150 includes at least a part of the straight line 14 having the specified size or length within the region 13 of the designated size from the center of the main frame 10, the content including the main frame 10 is included. Can be determined as the VR content of the 3D attribute.
- 9 and 10 are diagrams illustrating forms of content property determination according to the seventh and eighth embodiments, respectively.
- the left eye content and the right eye content may be similar or correspond to each other. However, at least some factors may differ between the left eye content and the right eye content according to the binocular disparity characteristics of the VR content of the 3D attribute.
- the first object (or object) included in each of the left eye content and the right eye content may have the same Y coordinate but different X coordinates.
- the processor of the electronic device 100 of FIG. 2 performs image processing on the main frame 10 of activated (or ordered output) content. At least one object (or object) having a predetermined size or more may be detected.
- the processor 150 may compare the plurality of objects with each other and detect at least one pair of objects that match more than a specified ratio. For example, if there are object pairs 15a and 15b in the main frame 10 that match more than the specified ratio, the processor 150 may configure the first object 15a and the second object constituting the object pair. 15b) The coordinates for each can be calculated. The processor 150 may compare the coordinates between the first object 15a and the second object 15b.
- the processor 150 when the coordinates for the first object 15a and the second object 15b include the same Y-axis coordinates regardless of the X-axis coordinates, the processor 150 stores the main frame 10.
- the included content may be determined as VR content having a 3D property.
- the processor 150 performs image processing on the first area 10a corresponding to the longitudinal half area of the main frame 10 and at least one detected in the first area 10a.
- the quantity of objects 16, 17 and / or 18 of may be calculated.
- the processor 150 may detect an object with respect to the second area 10b except for the first area 10a in the main frame 10 and calculate the quantity thereof.
- the processor 150 calculates an object quantity equal to the quantity of at least one object 16, 17 and / or 18 included in the first region 10a in the second region 10b
- the content including the main frame 10 may be determined as VR content having a 3D property.
- operations related to 3D attribute determination of activated (or output ordered) content may be the same as or correspond to the 360 degree attribute determination operation of the above-described content.
- the processor 150 assigns a sequential level of weights to the content property determination conditions according to the sixth to eighth embodiments, and satisfies the content property determination conditions based on the weighting values. Determination can be performed sequentially. If the sum of the weighted values for the at least one conditions for which the activated content is satisfied is equal to or greater than a specified threshold value, the processor 150 excludes determination of whether the content attribute determination condition is sequentially satisfied and then determines the activated content. It may be determined as a VR content having a 3D property.
- the processor 150 may include an application program (hereinafter referred to as a second application) including a player corresponding to the 3D attribute (or an output mode (VR content). The mode of running the player that matches the property).
- the processor 150 may output the aforementioned display object, thumbnail image, or preview image through FIG. 7 in relation to execution control of the identified second application.
- the processor 150 may control the execution of the second application to process the output of the activated content.
- an electronic device may include a housing, a memory storing at least one content and at least one application related to an output of the content, a display exposed through an area of the housing and displaying the content; It may include a memory and a processor electrically connected to the display.
- the processor determines at least a part of attributes based on whether at least one condition specified for content selected by an input is satisfied, and when it is determined that the attributes are related to VR (virtual reality) content.
- the selected content may be output based on execution of an application related to output of VR content.
- the processor may assign a weighted value to each of the at least one condition and compare the sum of the weighted values for the at least one condition for which the selected content is satisfied with a specified threshold value of the selected content. You can judge the property.
- the processor may include a color value between a plurality of pixels included in a first area on the selected content, a color value between a plurality of pixels included in a second area, and between a third area and a fourth area.
- the selected content may be determined as VR content having a 360 degree property.
- the processor may determine the selected content as VR content having a 360 degree property.
- the processor may compare curvature information of a curve having a specified size or more included in the selected content with curvature information of a three-dimensional sphere object to which the selected content is mapped, and wherein the selected content is the sphere object.
- the selected content may be determined as VR content having a 360 degree property.
- the processor adds a virtual boundary line for dividing the selected content in the horizontal direction to the selected content, and at least one curve refracted toward the upper direction in the upper region based on the boundary line is in a downward direction.
- the selected The content may be determined as VR content having a 360 degree property.
- the processor may compare the quantity of the longitudinal straight line and the quantity of the horizontal straight line included in the selected content or more, and the quantity of the vertical straight line is the quantity of the horizontal straight line.
- the selected content may be determined as VR content having a 360 degree property.
- the processor designates an area having a designated size at the center of the selected content, and when any one of a horizontal straight line or a longitudinal straight line having a specified size or length is included in the designated size area,
- the selected content may be determined as VR content having a 3D property.
- the processor detects at least one pair of objects that match a specified ratio or more within the selected content, and the same Y-axis coordinates on the selected content are used by objects constituting the at least one object pair. If it includes, it can be determined that the selected content as VR content of the 3D property.
- the processor may divide the selected content into a first area and a second area having the same area, and each of the first area and the second area includes the same number of objects.
- the content may be determined as VR content having a 3D property.
- the processor may output a display object capable of controlling the execution of an application related to the property of the content within a specified time or a specified time from the determined time. have.
- FIG. 11 is a view illustrating a content output method of an electronic device according to an embodiment of the present disclosure.
- an electronic device eg, a smartphone
- an external device eg, an HMD device (1 in FIG. 1) or smart glasses (FIG. 1) interacting with the electronic device.
- At least one content may be selected or activated in response to a user input on 2) and the like).
- the content may include at least one of an image or an image.
- the processor of the electronic device may analyze data about the activated content.
- the processor may analyze tag information, URL information, or storage file name information of the activated content.
- the analysis of the tag information or the URL information may be performed when the activated content is streamed from an external device (or an external server).
- the storage file name information analysis may be performed when the activated content is stored in the memory (110 of FIG. 2) of the electronic device.
- the processor may store data about the analyzed content in the memory.
- the processor May identify a player that matches the attribute of the activated content among at least one content player stored in a memory.
- the processor controls the execution of an application program (or an output mode (a mode for running a player corresponding to the property of the content)) including the identified content player to activate the application program based on the application program (or output mode). Can handle the output of the content.
- the processor may extract a main frame for the activated content.
- the processor may designate a main frame as a frame including a relatively large number of objects (or objects) having a specified size or more among at least one frame constituting the activated content.
- the processor may designate a first frame of the at least one frame constituting the content as the main frame.
- the processor may group at least one frame constituting the content into a specified range, select a specific group, and designate at least one frame included in the specific group as the main frame. The range for the grouping may be set based on the content processing capability of the electronic device or may be set by user control.
- the processor may determine whether the at least one condition specified for the main frame is satisfied.
- the processor may map the main frame to a three-dimensional sphere object.
- the processor may compare the color values between the plurality of pixels included in the first area in the main frame corresponding to the upper pole area on the sphere object.
- the processor may compare the color values between the plurality of pixels included in the second region in the main frame corresponding to the lower pole region on the sphere object.
- the processor may compare the color values between the same Y coordinate (or the same height) pixels included in each of the third region and the fourth region in the main frame that are adjacent to any spherical region of the spherical object.
- the processor may match a color value between a plurality of pixels included in the first area and a color value between a plurality of pixels included in the second area by a specified ratio or more, and the same Y between the third area and the fourth area.
- the processor may compare the lateral and longitudinal length ratios with respect to the main frame. In one embodiment, if the length ratio for the transverse direction and the longitudinal direction is equal to or within a specified ratio range (eg, 2: 1), the processor may cause the main frame to be in the second embodiment. It may be determined that the content attribute determination condition is satisfied.
- a specified ratio range eg, 2: 1
- the processor may extract at least one curve of a predetermined size or more included in the main frame by performing image processing (for example, an edge detection filter or an active contour model) on the main frame. .
- image processing for example, an edge detection filter or an active contour model
- the processor may compare the curvature of the extracted at least one curve with the curvature of the sphere object to which the main frame is mapped.
- the processor may determine the content attribute determination condition according to the third embodiment. You can judge that you are satisfied.
- the processor may extract at least one curve having a predetermined size or more on the main frame by performing image processing (eg, an edge detection filter or an active contour model) on the main frame.
- the processor may add a virtual boundary that bisects the main frame laterally on the main frame.
- the processor may determine a relative position between the extracted at least one curve and the horizontal boundary line, and analyze the refraction direction for each of the at least one curve. In one embodiment, when the upper region has a plurality of curves refracted toward the upper direction, and the lower region has a plurality of curves refracted toward the lower direction, the processor determines that the main frame is the fourth frame. It may be determined that the content attribute determination condition according to the embodiment is satisfied.
- the processor may extract longitudinal straight lines and transverse straight lines of a predetermined size or more by performing image processing (eg, an edge detection filter or an active contour model) on the main frame.
- the processor may compare the quantity between the longitudinal straight line and the transverse straight line.
- the processor may determine that the main frame satisfies the content attribute determination condition according to the fifth embodiment. .
- the processor may designate the content attribute determination conditions according to the first to fifth embodiments as the first group, and give different weights to the conditions. For example, the processor may assign a high level weighting value to a condition in which the accuracy of the judgment basis or the reliability of the determination result is relatively high among the above conditions, and may assign a sequential level weighting value to other conditions. have. In an embodiment of the present disclosure, the processor may determine whether the conditions included in the first group are satisfied in order of the conditions to which the weighting value is assigned.
- the processor may extract at least one of a horizontal straight line or a vertical straight line by performing image processing (eg, an edge detection filter or an active contour model) on the main frame.
- the processor may designate a region having a designated size in the center of the main frame, and determine whether to include the extracted horizontal straight line or vertical straight line in the designated region.
- the processor may determine that the main frame satisfies the content property determination condition according to the sixth embodiment. have.
- the processor may detect at least one object (or object) having a predetermined size or more based on image processing (eg, an edge detection filter or an active contour model) for the main frame. In this operation, when a plurality of the at least one object is detected, the processor may compare the plurality of objects to detect at least one pair of objects that match at least a mutually specified ratio. The processor may calculate coordinates on the main frame for each object constituting the object pair. According to an embodiment, when the objects constituting the object pair include the same Y axis coordinates regardless of the X axis coordinates, the processor may determine that the main frame satisfies the content attribute determination condition according to the seventh embodiment. Can be.
- image processing eg, an edge detection filter or an active contour model
- the processor may divide the main frame into a first area and a second area having the same area.
- the processor may detect an object (or an object) included in each of the first area and the second area based on image processing (eg, an edge detection filter or an active contour model) for the main frame.
- image processing eg, an edge detection filter or an active contour model
- the processor may satisfy the content property determination condition according to the eighth embodiment. You can judge that.
- the processor designates the content attribute determination conditions according to the sixth to eighth embodiments as the second group, and the processor may be configured in the same or similar manner as the weighting of the conditions in the first group. Specific conditions can be assigned to the conditions in the two groups. In an embodiment of the present disclosure, the processor may perform the determination of whether the conditions included in the second group are satisfied in the order of the conditions in which the weighting value is assigned according to the specific gravity.
- the processor may determine the property of the content selected or activated in response to the user input based on whether the content property determination conditions according to the first to eighth embodiments are satisfied.
- the processor may determine whether the conditions are sequentially satisfied based on the weight values for the first group, and add the weighted values of the satisfied conditions. In one embodiment, when the sum of the weighted values is equal to or greater than a predetermined threshold value, the processor may determine the selected or activated content as VR content having a 360 degree property. In this case, the processor may exclude whether the processor satisfies at least one condition in the first group that does not perform the determination.
- the processor may sequentially determine whether the conditions included in the second group are satisfied based on the weight values, and add the weighted values of the satisfied conditions. When the sum of the weighted values is equal to or greater than a predetermined threshold value, the processor may determine the selected or activated content as VR content having a 3D property according to a user input.
- determination of whether the conditions included in any one of the first group or the second group described above are satisfied may be performed first. have. According to this, when the property of the content is determined by the first group or the second group, it may be excluded whether the satisfaction of the conditions included in any other group is satisfied.
- the processor may exclude the configuration of the first group and the second group and perform content property determination according to the first to eighth embodiments with respect to the selected or activated content.
- the processor may assign a different weighting value to each of the conditions according to the first to eighth embodiments to determine whether the content is sequentially satisfied based on the weight value, or determine whether the content is satisfied in any order.
- the processor may determine the selected or activated content as VR content.
- the processor may identify a content player that matches the attribute of the selected or activated content among the at least one content player stored in the memory.
- the processor may process the output of the selected or activated content by controlling the execution of an application program including the identified content player, or by controlling the activation of an output mode for executing the identified content player.
- the processor may repeatedly perform content property determination based on the above-described conditions with respect to at least a portion of the output (or reproduced) content.
- the output (or played) content in various embodiments may include a plurality of attributes.
- part of the content may include a first property (eg, 360 degrees) and another part may include a second property (eg, 3D).
- the processor processes the output of the content based on the execution of the application program or the output mode corresponding to the attribute of the content that is initially determined, and the content is converted by repeating the content attribute determination in a continuous or designated cycle during the content output process The execution of the application program or the output mode corresponding to the attribute can be controlled.
- a method of outputting content of an electronic device may include: receiving an input for selecting at least one content, determining an attribute of the selected content based on whether at least one specified condition is satisfied, If it is determined that the content is related to VR (virtual reality) content, it may include an operation of controlling the execution of an application related to the output of the VR content and an operation of processing the output of the selected content based on the execution of the application.
- VR virtual reality
- the determining of the property of the selected content may include: color values between a plurality of pixels included in a first area of the selected content, color values between a plurality of pixels included in a second area, and If the color value between the pixels corresponding to the same Y coordinate between the third area and the fourth area is equal to or greater than a specified ratio, the method may include determining the selected content as VR content having a 360 degree property.
- the determining of the property of the selected content may include determining a lateral length and a longitudinal length ratio with respect to the selected content, and a length ratio in which a ratio between the lateral length and the longitudinal length is specified. If included in the, may include the step of determining the selected content as VR content of the 360-degree property.
- the determining of the property of the selected content may include comparing curvature information of a curve having a specified size or more included in the selected content with curvature information of a 3D sphere object to which the selected content is mapped. And when the selected content includes a curve having a curvature smaller than the curvature of the old object in a specified quantity or more, determining the selected content as VR content having a 360 degree property.
- the determining of the property of the selected content may include adding a virtual boundary line for dividing the selected content in the horizontal direction to the selected content, and including the upper and lower regions on the basis of the boundary line. Determining a direction of refraction of the curved curve, and at least one curve refracted upward in the upper region is greater than at least one curve curved downward, or refracted downward in the lower region. If the at least one curve exists more than the at least one curve refracted toward the upper direction, the method may include determining the selected content as VR content having a 360 degree property.
- the determining of the property of the selected content may include comparing the quantity of the longitudinal straight line having a predetermined size or more included in the selected content and the quantity of the horizontal straight line and the longitudinal straight line. If the quantity is relatively large relative to the quantity of the horizontal line, the method may include determining the selected content as VR content having a 360 degree property.
- the determining of the property of the selected content may include specifying an area having a predetermined size in a central portion of the selected content, at least one of a horizontal straight line or a vertical straight line having a specified size or length in the selected content. And extracting one, and determining the selected content as VR content having a 3D property when any one of the horizontal straight line and the vertical straight line is included in the region of the designated size.
- the determining of the property of the selected content may include detecting at least one pair of objects that match a specified ratio or more within the selected content and mutually forming the at least one object pair. If the simple content includes the same Y-axis coordinates on the selected content, the method may include determining the selected content as VR content having a 3D property.
- the determining of the property of the selected content may include splitting the selected content into a first area and a second area having the same area, and included in each of the first area and the second area. Calculating the quantity of objects, and determining the selected content as VR content having a 3D property when the first area and the second area include the same number of objects.
- FIG. 12 is a block diagram of an electronic device according to an embodiment of the present disclosure.
- the electronic device 1201 may include, for example, all or part of the electronic device 100 illustrated in FIG. 2.
- the electronic device 1201 may include one or more processors (eg, an AP) 1210, a communication module 1220, a subscriber identification module 1224, a memory 1230, a sensor module 1240, an input device 1250, and a display ( 1260, an interface 1270, an audio module 1280, a camera module 1291, a power management module 1295, a battery 1296, an indicator 1297, and a motor 1298.
- the processor 1210 may control, for example, a plurality of hardware or software components connected to the processor 1210 by running an operating system or an application program, and may perform various data processing and operations.
- the processor 1210 may be implemented with, for example, a system on chip (SoC).
- SoC system on chip
- the processor 810 may further include a graphic processing unit (GPU) and / or an image signal processor.
- the processor 1210 may include at least some of the components illustrated in FIG. 12 (eg, the cellular module 1221).
- the processor 1210 may load and process instructions or data received from at least one of the other components (eg, nonvolatile memory) into volatile memory, and store various data in the nonvolatile memory. have.
- the communication module 1220 may have a configuration that is the same as or similar to that of the communication interface 130 of FIG. 2.
- the communication module 1220 may be, for example, a cellular module 1221, a Wi-Fi module 1223, a Bluetooth (BT) module 1225, a GNSS module 1227 (eg, a GPS module, a Glonass module, a Beidou module). Or a Galileo module), an NFC module 1228, and a radio frequency (RF) module 1229.
- the cellular module 1221 may provide, for example, a voice call, a video call, a text service, an internet service, or the like through a communication network. According to an embodiment of the present disclosure, the cellular module 1221 may perform identification and authentication of the electronic device 1201 in a communication network by using a subscriber identification module (eg, a SIM card) 1224. According to an embodiment, the cellular module 1221 may perform at least some of the functions that the processor 1210 may provide. According to an embodiment, the cellular module 1221 may include a communication processor (CP).
- CP communication processor
- Each of the Wi-Fi module 1223, the Bluetooth module 1225, the GNSS module 1227, or the NFC module 1228 may include, for example, a processor for processing data transmitted and received through the corresponding module. have. According to some embodiments, at least some (eg, two or more) of the cellular module 1221, the Wi-Fi module 1223, the Bluetooth module 1225, the GNSS module 1227, or the NFC module 1228 may be one. It may be included in an integrated chip (IC) or an IC package of the.
- IC integrated chip
- the RF module 1229 may transmit / receive, for example, a communication signal (eg, an RF signal).
- the RF module 1229 may include, for example, a transceiver, a power amp module (PAM), a frequency filter, a low noise amplifier (LNA), an antenna, or the like.
- PAM power amp module
- LNA low noise amplifier
- at least one of the cellular module 1221, the Wi-Fi module 1223, the Bluetooth module 1225, the GNSS module 1227, or the NFC module 1228 may be an RF signal through a separate RF module. Can transmit and receive.
- Subscriber identification module 1224 may include, for example, a card comprising a subscriber identification module and / or an embedded SIM, and may include unique identification information (eg, an integrated circuit card identifier (ICCID)) or It may include subscriber information (eg, international mobile subscriber identity).
- ICCID integrated circuit card identifier
- the memory 1230 may include, for example, an internal memory 1232 or an external memory 1234.
- the internal memory 1232 may be, for example, volatile memory (eg, dynamic RAM (DRAM), static RAM (SRAM), or synchronous dynamic RAM (SDRAM), etc.), non-volatile memory (eg, One time programmable ROM (OTPROM), programmable ROM (PROM), erasable and programmable ROM (EPROM), electrically erasable and programmable ROM (EPEROM), mask ROM, flash ROM, flash memory (e.g., NAND flash) (NAND flash or NOR flash, etc.), a hard drive, or a solid state drive (SSD).
- volatile memory eg, dynamic RAM (DRAM), static RAM (SRAM), or synchronous dynamic RAM (SDRAM), etc.
- non-volatile memory eg, One time programmable ROM (OTPROM), programmable ROM (PROM), erasable and programmable ROM (EPROM), electrically
- the external memory 1234 may be a flash drive, for example, compact flash (CF), secure digital (SD), Micro-SD, Mini-SD, extreme digital (XD), MultiMediaCard (MMC), or memory. It may further include a stick (memory stick).
- the external memory 1234 may be functionally and / or physically connected to the electronic device 1201 through various interfaces.
- the sensor module 1240 may, for example, measure a physical quantity or detect an operation state of the electronic device 1201, and convert the measured or detected information into an electrical signal.
- the sensor module 1240 is, for example, the gesture sensor 1240A, the gyro sensor 1240B, the barometric pressure sensor 1240C, the magnetic sensor 1240D, the acceleration sensor 1240E, the grip sensor 1240F, and the proximity sensor ( 1240G), at least one of a color sensor 1240H (e.g., an RGB sensor), a biometric sensor 1240I, a temperature / humidity sensor 1240J, an illuminance sensor 1240K, or an ultraviolet (ultra violet) sensor 1240M. can do.
- a color sensor 1240H e.g., an RGB sensor
- biometric sensor 1240I e.g., a biometric sensor 1240I
- a temperature / humidity sensor 1240J e.g., an illuminance sensor 1240K
- the sensor module 1240 may include, for example, an olfactory sensor, an electromyography sensor, an electronphalogram sensor, an electrocardiogram sensor, an infrared sensor, or an iris. Sensors and / or fingerprint sensors.
- the sensor module 1240 may further include a control circuit for controlling at least one or more sensors belonging therein.
- the electronic device 1201 further includes a processor configured to control the sensor module 1240 as part of or separately from the processor 1210, while the processor 1210 is in a sleep state. The sensor module 1240 may be controlled.
- the input device 1250 may be, for example, a touch panel 1252, a (digital) pen sensor 1254, a key 1256, or an ultrasonic input device ( 1258).
- the touch panel 1252 may use at least one of capacitive, resistive, infrared, or ultrasonic methods, for example.
- the touch panel 1252 may further include a control circuit.
- the touch panel 1252 may further include a tactile layer to provide a tactile response to the user.
- the (digital) pen sensor 1254 may be, for example, part of a touch panel or may include a separate sheet for recognition.
- the key 1256 may include, for example, a physical button, an optical key, or a keypad.
- the ultrasonic input device 1258 may detect ultrasonic waves generated by an input tool through a microphone (for example, the microphone 1288) and check data corresponding to the detected ultrasonic waves.
- Display 1260 (eg, display 120 (see FIG. 2)) can include panel 1262, hologram device 1264, or projector 1266.
- the panel 1262 may include a configuration that is the same as or similar to the display 120 of FIG. 2.
- the panel 1262 may be implemented to be, for example, flexible, transparent, or wearable.
- the panel 1262 may be configured as a single module together with the touch panel 1252.
- the hologram device 1264 may show a stereoscopic image in the air by using interference of light.
- the projector 1266 may display an image by projecting light onto a screen.
- the screen may be located inside or outside the electronic device 1201.
- the display 1260 may further include a control circuit for controlling the panel 1262, the hologram device 1264, or the projector 1266.
- the interface 1270 may include, for example, an HDMI 1272, a USB 1756, an optical interface 1276, or a D-subminiature 1278.
- the interface 1270 may be included in, for example, the input / output interface 160 illustrated in FIG. 2. Additionally or alternatively, interface 1270 may include, for example, a mobile high-definition link (MHL) interface, an SD card / MMC interface, or an infrared data association (IrDA) compliant interface.
- MHL mobile high-definition link
- IrDA infrared data association
- the audio module 1280 may bilaterally convert, for example, a sound and an electrical signal.
- the audio module 1280 may process sound information input or output through, for example, a speaker 1282, a receiver 1284, an earphone 1286, a microphone 1288, or the like.
- the camera module 1291 may be, for example, a device capable of capturing still images and moving images.
- the camera module 1291 may include one or more image sensors (eg, a front sensor or a rear sensor), a lens, and an image signal processor (ISP). Or flash (eg, LEDs or xenon lamps).
- image sensors eg, a front sensor or a rear sensor
- ISP image signal processor
- flash eg, LEDs or xenon lamps.
- the power management module 1295 may manage power of the electronic device 1201, for example.
- the power management module 1295 may include a power management integrated circuit (PMIC), a charger integrated circuit (ICC), or a battery or fuel gauge.
- the PMIC may have a wired and / or wireless charging scheme.
- the wireless charging method may include, for example, a magnetic resonance method, a magnetic induction method, an electromagnetic wave method, or the like, and may further include additional circuits for wireless charging, such as a coil loop, a resonance circuit, a rectifier, and the like. have.
- the battery gauge may measure, for example, the remaining amount of the battery 1296, the voltage, the current, or the temperature during charging.
- the battery 1296 may include, for example, a rechargeable battery and / or a solar battery.
- the indicator 1297 may display a specific state of the electronic device 1201 or a part thereof (for example, the processor 1210), for example, a booting state, a message state, or a charging state.
- the motor 1298 may convert an electrical signal into mechanical vibration, and may generate a vibration or haptic effect.
- the electronic device 1201 may include a processing device (eg, a GPU) for supporting mobile TV.
- the processing apparatus for supporting mobile TV may process media data according to a standard such as Digital Multimedia Broadcasting (DMB), Digital Video Broadcasting (DVB), or MediaFLOTM.
- DMB Digital Multimedia Broadcasting
- DVD Digital Video Broadcasting
- MediaFLOTM MediaFLOTM
- each of the components described in this document may be composed of one or more components, and the name of the corresponding component may vary according to the type of electronic device.
- the electronic device may be configured to include at least one of the components described in this document, and some components may be omitted or further include other additional components.
- some of the components of the electronic device according to various embodiments of the present disclosure may be combined to form one entity, and thus may perform the same functions of the corresponding components before being combined.
- FIG. 13 is a block diagram of a program module according to an exemplary embodiment.
- the program module 1310 may include an operating system (OS) that controls resources related to an electronic device (eg, the electronic device (100 of FIG. 2)) and / or various applications (eg, running on the operating system).
- OS operating system
- applications eg, running on the operating system
- Application program 111 in FIG. 2.
- the operating system may be, for example, android, ios, windows, symbian, tizen, bada, or the like.
- the program module 1310 may include a kernel 1320, middleware 1330, an API 1360, and / or an application 1370. At least a part of the program module 1310 may be preloaded on the electronic device or downloaded from an external electronic device (eg, an external device (5 of FIG. 2), a server (6 of FIG. 2), etc.).
- an external electronic device eg, an external device (5 of FIG. 2), a server (6 of FIG. 2), etc.
- the kernel 1320 may include, for example, a system resource manager 1321 or a device driver 1323.
- the system resource manager 1321 may perform control, allocation, or retrieval of system resources.
- the system resource manager 1321 may include a process manager, a memory manager, or a file system manager.
- the device driver 1323 may include, for example, a display driver, a camera driver, a Bluetooth driver, a shared memory driver, a USB driver, a keypad driver, a Wi-Fi driver, an audio driver, or an inter-process communication (IPC) driver. Can be.
- IPC inter-process communication
- the middleware 1330 may provide functions commonly required by the application 1370, or may provide various functions through the API 1360 to enable the application 1370 to efficiently use limited system resources inside the electronic device. Functions may be provided to the application 1370.
- the middleware 1330 eg, the middleware (115 of FIG. 2)
- the runtime library 1335 may include, for example, a library module that the compiler uses to add new functionality through the programming language while the application 1370 is running.
- the runtime library 1335 may perform input / output management, memory management, or a function for an arithmetic function.
- the application manager 1341 may manage, for example, a life cycle of at least one of the applications 1370.
- the window manager 1342 may manage GUI resources used on the screen.
- the multimedia manager 1343 may identify a format required for playing various media files, and may encode or decode the media file using a codec suitable for the format.
- the resource manager 1344 may manage resources such as source code, memory, or storage space of at least one of the applications 1370.
- the power manager 1345 may operate together with a basic input / output system (BIOS) to manage a battery or power, and provide power information necessary for the operation of the electronic device.
- the database manager 1346 may generate, search for, or change a database to be used by at least one of the applications 1370.
- the package manager 1347 may manage installation or update of an application distributed in the form of a package file.
- the connection manager 1348 may manage, for example, a wireless connection such as Wi-Fi or Bluetooth. Notification manager 1349 may display or notify events such as arrival messages, appointments, proximity notifications, and the like in a manner that does not disturb the user.
- the location manager 1350 may manage location information of the electronic device.
- the graphic manager 1351 may manage graphic effects to be provided to the user or a user interface related thereto.
- the security manager 1352 may provide various security functions required for system security or user authentication. According to an embodiment of the present disclosure, when the electronic device (for example, the electronic device (100 of FIG. 2)) includes a telephone function, the middleware 1330 may include a telephone manager for managing a voice or video call function of the electronic device. It may further include.
- the middleware 1330 may include a middleware module that forms a combination of various functions of the above-described components.
- the middleware 1330 may provide a module specialized for each type of OS in order to provide a differentiated function.
- the middleware 1330 may dynamically delete some of the existing components or add new components.
- the API 1360 (eg, API (117 in FIG. 2)) is, for example, a set of API programming functions, which may be provided in different configurations depending on the operating system. For example, in the case of Android or iOS, one API set may be provided for each platform, and in Tizen, two or more API sets may be provided for each platform.
- the application 1370 (e.g., an application program (111 in FIG. 2)) is, for example, a home 1372, a dialer 1372, an SMS / MMS 1373, an instant message (IM) 1374, a browser ( 1375, camera 1376, alarm 1377, contact 1358, voice dial 1379, email 1380, calendar 1381, media player 1302, album 1383, clock 1384, May include one or more applications capable of performing functions such as health care (e.g., measuring exercise or blood glucose), or providing environmental information (e.g., providing barometric pressure, humidity, or temperature information). have.
- health care e.g., measuring exercise or blood glucose
- environmental information e.g., providing barometric pressure, humidity, or temperature information.
- the application 1370 may include an application that supports information exchange between an electronic device (eg, the electronic device (100 of FIG. 2)) and an external electronic device (eg, the external device (5 of FIG. 2)).
- an electronic device eg, the electronic device (100 of FIG. 2)
- an external electronic device eg, the external device (5 of FIG. 2)
- the information exchange application may include, for example, a notification relay application for delivering specific information to an external electronic device, or a device management application for managing the external electronic device.
- the notification delivery application may include notification information generated by another application of the electronic device (eg, an SMS / MMS application, an email application, a health care application, or an environmental information application). 2) 5)) may include a function to deliver. Also, the notification delivery application may receive notification information from an external electronic device and provide the notification information to a user, for example.
- another application of the electronic device eg, an SMS / MMS application, an email application, a health care application, or an environmental information application.
- the notification delivery application may receive notification information from an external electronic device and provide the notification information to a user, for example.
- the device management application may, for example, turn at least one function of an external electronic device (eg, an external device (5 in FIG. 2)) in communication with the electronic device (eg, turn off of the external electronic device itself (or some component part)).
- an external electronic device eg, an external device (5 in FIG. 2)
- the electronic device eg, turn off of the external electronic device itself (or some component part)
- the application 1370 may include an application (eg, a health care application of a mobile medical device) designated according to an attribute of an external electronic device (eg, an external device (5 of FIG. 2)).
- the application 1370 may include an application received from an external electronic device (for example, an external device 5 of FIG. 2 or a server 6 of FIG. 2).
- the application 1370 may include a preloaded application or a third party application downloadable from a server.
- the names of the components of the program module 1310 according to the shown embodiment may vary depending on the type of operating system.
- At least a part of the program module 1310 may be implemented in software, firmware, hardware, or a combination of two or more thereof. At least a part of the program module 1310 may be implemented (eg, executed) by, for example, a processor (eg, a processor (150 of FIG. 2)). At least some of the program module 1310 may include, for example, a module, a program, a routine, sets of instructions, or a process for performing one or more functions.
- module may refer to a unit that includes one or a combination of two or more of hardware, software, or firmware.
- a “module” may be interchangeably used with terms such as, for example, unit, logic, logical block, component, or circuit.
- the module may be a minimum unit or part of an integrally constructed part.
- the module may be a minimum unit or part of performing one or more functions.
- the “module” can be implemented mechanically or electronically.
- a “module” is one of application-specific integrated circuit (ASIC) chips, field-programmable gate arrays (FPGAs), or programmable-logic devices that perform certain operations, known or developed in the future. It may include at least one.
- ASIC application-specific integrated circuit
- FPGAs field-programmable gate arrays
- an apparatus eg, modules or functions thereof
- a method eg, operations
- computer-readable storage media in the form of a program module. It can be implemented as a command stored in.
- the instruction is executed by a processor (for example, the processor 150 of FIG. 2), the one or more processors may perform a function corresponding to the instruction.
- the computer-readable storage medium may be, for example, a memory (110 of FIG. 2).
- Computer-readable recording media include hard disks, floppy disks, magnetic media (e.g. magnetic tapes), optical media (e.g. CD-ROMs, digital versatile discs), magnetic- Optical media (eg floptical disks), hardware devices (eg ROM, RAM, flash memory, etc.), etc.
- program instructions may be created by a compiler. It may include not only machine code, such as losing, but also high-level language code executable by a computer using an interpreter, etc.
- the hardware device described above may be configured to operate as one or more software modules to perform the operations of various embodiments. And vice versa.
- Modules or program modules according to various embodiments of the present disclosure may include at least one or more of the above components, some of them may be omitted, or may further include other additional components.
- Operations performed by a module, program module, or other component according to various embodiments of the present disclosure may be executed in a sequential, parallel, repetitive, or heuristic manner. In addition, some operations may be executed in a different order, may be omitted, or other operations may be added.
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- Human Computer Interaction (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Computer Hardware Design (AREA)
- Geometry (AREA)
- Library & Information Science (AREA)
- User Interface Of Digital Computer (AREA)
- Cathode-Ray Tubes And Fluorescent Screens For Display (AREA)
Abstract
본 발명의 일 실시 예는, 하우징, 적어도 하나의 콘텐츠 및 상기 콘텐츠의 출력과 관계된 적어도 하나의 어플리케이션을 저장하는 메모리, 상기 하우징의 일 영역을 통하여 노출되며 상기 콘텐츠를 표시하는 디스플레이, 및 상기 메모리, 상기 디스플레이와 전기적으로 연결되는 프로세서를 포함하고, 상기 프로세서는 입력에 의하여 선택된 콘텐츠에 대하여 지정된 적어도 하나의 조건 만족 여부를 기반으로 상기 콘텐츠의 적어도 일 부분의 속성을 판단하고, 상기 속성이 VR(virtual reality) 콘텐츠에 관계되는 것으로 판단되면, VR 콘텐츠의 출력과 관계된 어플리케이션의 실행을 기반으로 상기 선택된 콘텐츠를 출력하도록 설정된 전자 장치를 개시한다. 이 외에도 명세서를 통하여 파악되는 다양한 실시 예가 가능하다.
Description
본 문서에서 개시되는 실시 예들은, 콘텐츠 속성에 기초한 콘텐츠 출력 기술과 관련된다.
스마트 폰 시장이 성숙기로 접어들며, 상기 스마트 폰과 연동되어 다양한 기능 운용을 지원하는 착용형 전자 장치, 이른바 웨어러블(wearable) 장치가 제안되고 있다. 상기 웨어러블 장치는 다방면의 분야에서 인간과 기술 간의 유기적 융합을 지원할 수 있다. 일례로, 헤드 마운트 디스플레이(Head Mounted Display; HMD) 또는 스마트 안경(smart glasses) 등의 웨어러블 장치는 사용자의 시계 상에 가상현실(virtual reality; VR) 또는 증강현실(augmented reality; AR)과 같은 입체감 있는 콘텐츠를 제공하며 사용자들의 다채로운 경험 수요를 충족시켜주고 있다.
웨어러블 장치 또는 상기 웨어러블 장치와 연동되는 전자 장치 상에서 콘텐츠의 속성(예: 2D 콘텐츠, 3D 콘텐츠 또는 360도 콘텐츠 등)에 따른 출력 모드(예: 2D 모드, 3D 모드 또는 360도 모드 등) 선택과 관련하여 사용자 제어가 요구될 수 있다. 이 경우, 상기 사용자 제어 또는 사용자 제어에 대한 처리로 인하여 콘텐츠 시청의 몰입도가 저해되거나, 사용자의 경험 단절이 초래될 수 있다.
본 문서의 다양한 실시 예들은, 콘텐츠의 속성에 최적화된 콘텐츠 출력을 지원함으로써, VR 시스템의 용이한 운용 또는 콘텐츠 시청의 제약을 최소화할 수 있는 콘텐츠 출력 방법 및 이를 지원하는 전자 장치를 제공할 수 있다.
일 실시 예에 따른 전자 장치는, 하우징, 적어도 하나의 콘텐츠 및 상기 콘텐츠의 출력과 관계된 적어도 하나의 어플리케이션을 저장하는 메모리, 상기 하우징의 일 영역을 통하여 노출되며 상기 콘텐츠를 표시하는 디스플레이 및 상기 메모리, 상기 디스플레이와 전기적으로 연결되는 프로세서를 포함할 수 있다.
다양한 실시 예에 따르면, 상기 프로세서는 입력에 의하여 선택된 콘텐츠에 대하여 지정된 적어도 하나의 조건 만족 여부를 기반으로 적어도 일 부분의 속성을 판단하고, 상기 속성이 VR 콘텐츠에 관계되는 것으로 판단되면, VR 콘텐츠의 출력과 관계된 어플리케이션의 실행을 기반으로 상기 선택된 콘텐츠를 출력할 수 있다.
다양한 실시 예에 따르면, 콘텐츠 속성에 따른 사용자의 출력 제어가 배제됨으로써, VR 시스템의 용이한 운용을 구현할 수 있다.
다양한 실시 예에 따르면, VR 시스템의 최적화를 통하여 콘텐츠 시청에 대한 몰입감이 향상될 수 있다.
이 외에, 본 문서를 통해 직접적 또는 간접적으로 파악되는 다양한 효과들이 제공될 수 있다.
도 1은 일 실시 예에 따른 전자 장치의 운용 환경을 예시적으로 도시한 도면이다.
도 2는 일 실시 예에 따른 전자 장치의 구성을 도시한 도면이다.
도 3a는 제1 실시 예에 따른 콘텐츠 속성 판단의 형태를 도시한 도면이다.
도 3b는 제1 실시 예에 따른 콘텐츠 속성 판단의 다른 형태를 도시한 도면이다.
도 3c는 제1 실시 예에 따른 콘텐츠 속성 판단의 또 다른 형태를 도시한 도면이다.
도 4는 제2 실시 예에 따른 콘텐츠 속성 판단의 형태를 도시한 도면이다.
도 5는 제3 실시 예에 따른 콘텐츠 속성 판단의 형태를 도시한 도면이다.
도 6은 제4 실시 예에 따른 콘텐츠 속성 판단의 형태를 도시한 도면이다.
도 7은 제5 실시 예에 따른 콘텐츠 속성 판단의 형태를 도시한 도면이다.
도 8은 제6 실시 예에 따른 콘텐츠 속성 판단의 형태를 도시한 도면이다.
도 9는 제7 실시 예에 따른 콘텐츠 속성 판단의 형태를 도시한 도면이다.
도 10은 제8 실시 예에 따른 콘텐츠 속성 판단의 형태를 도시한 도면이다.
도 11은 일 실시 예에 따른 전자 장치의 콘텐츠 출력 방법을 도시한 도면이다.
도 12는 일 실시 예에 따른 전자 장치의 블록도를 도시한 도면이다.
도 13은 일 실시 예에 따른 프로그램 모듈의 블록도를 도시한 도면이다.
이하, 본 발명의 다양한 실시 예가 첨부된 도면을 참조하여 기재된다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 실시 예의 다양한 변경(modification), 균등물(equivalent), 및/또는 대체물(alternative)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다.
본 문서에서, "가진다", "가질 수 있다", "포함한다", 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.
본 문서에서, "A 또는 B", "A 또는/및 B 중 적어도 하나", 또는 "A 또는/및 B 중 하나 또는 그 이상" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B", "A 및 B 중 적어도 하나", 또는 "A 또는 B 중 적어도 하나"는, (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는 (3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다.
본 문서에서 사용된 "제1", "제2", "첫째", 또는 "둘째" 등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 예를 들면, 제1 사용자 기기와 제2 사용자 기기는, 순서 또는 중요도와 무관하게, 서로 다른 사용자 기기를 나타낼 수 있다. 예를 들면, 본 문서에 기재된 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 바꾸어 명명될 수 있다.
어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 다른 구성요소(예: 제3 구성요소)가 존재하지 않는 것으로 이해될 수 있다.
본 문서에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)", "~하는 능력을 가지는(having the capacity to)", "~하도록 설계된(designed to)", "~하도록 변경된(adapted to)", "~하도록 만들어진(made to)", 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성(또는 설정)된"은 하드웨어적으로 "특별히 설계된(specifically designed to)"것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성(또는 설정)된 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다.
본 문서에서 사용된 용어들은 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 다른 실시 예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 문서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 본 문서에 사용된 용어들 중 일반적인 사전에 정의된 용어들은 관련 기술의 문맥 상 가지는 의미와 동일 또는 유사한 의미로 해석될 수 있으며, 본 문서에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 문서에서 정의된 용어일지라도 본 문서의 실시 예들을 배제하도록 해석될 수 없다.
본 문서의 다양한 실시 예들에 따른 전자 장치는, 예를 들면, 스마트폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 영상 전화기, 전자책 리더기(e-book reader), 데스크탑 PC (desktop PC), 랩탑 PC(laptop PC), 넷북 컴퓨터(netbook computer), 워크스테이션(workstation), 서버, PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라, 또는 웨어러블 장치(wearable device) 중 적어도 하나를 포함할 수 있다. 다양한 실시 예에 따르면 웨어러블 장치는 엑세서리 형(예: 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device(HMD)), 직물 또는 의류 일체 형(예: 전자 의복), 신체 부착 형(예: 스킨 패드(skin pad) 또는 문신), 또는 생체 이식 형(예: implantable circuit) 중 적어도 하나를 포함할 수 있다.
어떤 실시 예들에서, 전자 장치는 가전 제품(home appliance)일 수 있다. 가전 제품은, 예를 들면, 텔레비전, DVD 플레이어(Digital Video Disk player), 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스(set-top box), 홈 오토매이션 컨트롤 패널(home automation control panel), 보안 컨트롤 패널(security control panel), TV 박스(예: 삼성 HomeSync™, 애플TV™, 또는 구글 TV™), 게임 콘솔(예: Xbox™, PlayStation™), 전자 사전, 전자 키, 캠코더, 또는 전자 액자 중 적어도 하나를 포함할 수 있다.
다른 실시 예에서, 전자 장치는, 각종 의료기기(예: 각종 휴대용 의료측정기기(혈당 측정기, 심박 측정기, 혈압 측정기, 또는 체온 측정기 등), MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 또는 초음파기 등), 네비게이션(navigation) 장치, 위성 항법 시스템(GNSS(Global Navigation Satellite System)), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트(infotainment) 장치, 선박용 전자 장비(예: 선박용 항법 장치, 자이로 콤파스 등), 항공 전자기기(avionics), 보안 기기, 차량용 헤드 유닛(head unit), 산업용 또는 가정용 로봇, 금융 기관의 ATM(automatic teller's machine), 상점의 POS(point of sales), 또는 사물 인터넷 장치(internet of things)(예: 전구, 각종 센서, 전기 또는 가스 미터기, 스프링클러 장치, 화재경보기, 온도조절기(thermostat), 가로등, 토스터(toaster), 운동기구, 온수탱크, 히터, 보일러 등) 중 적어도 하나를 포함할 수 있다.
어떤 실시 예에 따르면, 전자 장치는 가구(furniture) 또는 건물/구조물의 일부, 전자 보드(electronic board), 전자 사인 수신 장치(electronic signature receiving device), 프로젝터(projector), 또는 각종 계측 기기(예: 수도, 전기, 가스, 또는 전파 계측 기기 등) 중 적어도 하나를 포함할 수 있다. 다양한 실시 예에서, 전자 장치는 전술한 다양한 장치들 중 하나 또는 그 이상의 조합일 수 있다. 어떤 실시 예에 따른 전자 장치는 플렉서블 전자 장치일 수 있다. 또한, 본 문서의 실시 예에 따른 전자 장치는 전술한 기기들에 한정되지 않으며, 기술 발전에 따른 새로운 전자 장치를 포함할 수 있다.
이하, 첨부 도면을 참조하여, 다양한 실시 예에 따른 전자 장치가 설명된다. 본 문서에서, 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치 (예: 인공지능 전자 장치)를 지칭할 수 있다.
도 1은 일 실시 예에 따른 전자 장치의 운용 환경을 예시적으로 도시한 도면이다.
도 1을 참조하면, 일 실시 예에 따른 전자 장치(100)는 VR 시스템의 운용과 관련하여 다양한 외부 장치와 상호작용할 수 있다. 이와 관련하여, 전자 장치(100)는 헤드 마운트 디스플레이(Head Mounted Display; HMD)(1) 또는 스마트 안경(smart glasses)(2) 등의 외부 장치와 네트워크를 구축할 수 있다. 전자 장치(100)는 유선 통신 또는 무선 통신을 수행하여 상기 네트워크에 접속함으로써, 상기 외부 장치와 콘텐츠 데이터를 송신 또는 수신할 수 있다.
일 실시 예에서, 전자 장치(100)는 HMD 장치(1)에 장착되어 운용될 수 있다. 전자 장치(100)는 예컨대, HMD 장치(1)에 구비되는 체결 부재(예: 후크(hook), 밴드 또는 나사 등)를 기반으로 HMD 장치(1)의 전면 영역에 장착 및 탈거될 수 있다. 또는, 전자 장치(100)는 HMD 장치(1)에 포함되거나, HMD 장치(1)와 물리적으로 일체화되어 운용될 수 있다. 전자 장치(100)의 디스플레이 영역에 표시되는 VR 콘텐츠(예: 영상 또는 이미지)는 HMD 장치(1)에 탑재된 렌즈 조립체를 통하여 상기 HMD 장치(1)를 착용한 사용자의 시계 상에 표시될 수 있다. HMD 장치(1)를 기반으로 VR 콘텐츠를 시청함에 있어, VR 콘텐츠에 대한 시점(view) 전환은 HMD 장치(1) 사용자의 신체(예: 머리) 움직임에 대응될 수 있다.
일 실시 예에서, 전자 장치(100)는 스마트 안경(2)과 기능적으로 페어링(pairing)될 수 있다. 전자 장치(100)의 디스플레이 영역에는 3D(Three Dimension) 속성을 포함하는 VR 콘텐츠가 표시될 수 있다. 이 경우, 전자 장치(100)는 3D 속성의 VR 콘텐츠를 사용자의 양안에 대응하는 좌안 콘텐츠 및 우안 콘텐츠의 형태로 교번시켜 표시할 수 있다. 전자 장치(100)는 양안시차(binocular parallax)의 구현과 관련하여, 스마트 안경(2)에 탑재된 셔터(shutter)가 상기 좌안 콘텐츠 및 우안 콘텐츠에 대응하여 선택적으로 개폐되도록 스마트 안경(2)에 동기화 신호 또는 제어 신호를 송신할 수 있다.
다양한 실시 예에서, 외부 장치는 상술한 HMD 장치(1) 또는 스마트 안경(2)으로 제한되는 것은 아니며, 전자 장치(100)와의 상호작용을 통하여 VR 시스템을 구축 또는 지원할 수 있는 다양한 플랫폼(platform)을 포함할 수 있다.
도 2는 일 실시 예에 따른 전자 장치의 구성을 도시한 도면이다.
도 2를 참조하면, 전자 장치(100)는 외부 장치(5) 또는 서버(6)와 네트워크(4)를 구축하여 전기적 또는 통신적으로 연결될 수 있다. 상기 외부 장치(5)는 도 1을 통하여 전술한 HMD 장치(1) 또는 스마트 안경(2) 중 적어도 하나를 포함할 수 있다. 상기 서버(6)는 예컨대, 전자 장치(100)로 적어도 하나의 콘텐츠에 대한 다운로드 또는 스트리밍(streaming)을 지원할 수 있다.
일 실시 예에서, 전자 장치(100)는 메모리(110), 디스플레이(120), 통신 인터페이스(130), 카메라 모듈(140), 프로세서(150) 및 입출력 인터페이스(160)를 포함할 수 있다. 어떤 실시 예에서, 전자 장치(100)는 상술한 구성요소들 중 적어도 하나를 생략하거나, 다른 구성요소를 추가적으로 포함할 수 있다.
메모리(110)는 디스플레이(120)에 표시되는 적어도 하나의 콘텐츠를 저장할 수 있다. 예를 들어, 메모리(110)는 별도의 외부 장치(또는, 서버)로부터 다운로드 또는 스트리밍 받거나, 상기 카메라 모듈(140)에 의하여 촬영되는 콘텐츠(예: 영상 또는 이미지)를 저장할 수 있다. 메모리(110)는 적어도 하나의 프로그램을 포함할 수 있다. 상기 프로그램은 어플리케이션 프로그램(111), 커널(113), 미들웨어(115) 또는 어플리케이션 프로그래밍 인터페이스(Application Programming Interface; API)(117) 등을 포함할 수 있다. 커널(113), 미들웨어(115) 또는 API(117)의 적어도 일부는 운영 시스템(Operating System; OS)으로 지칭될 수 있다.
상기 어플리케이션 프로그램(111)(또는, 어플리케이션 프로그램(111)의 실행에 따른 그래픽 사용자 인터페이스(graphic user interface))은 예컨대, 적어도 하나의 콘텐츠를 포함할 수 있다. 또는, 어플리케이션 프로그램(111)은 상기 콘텐츠의 속성에 기초한(또는, 콘텐츠의 속성에 대응하는) 적어도 하나의 플레이어(player)를 포함할 수 있다. 다양한 실시 예에서, 어플리케이션 프로그램(111)은 하나 이상으로 메모리(110)에 포함될 수 있다.
상기 커널(113)은 다른 프로그램들(예: 어플리케이션 프로그램(111), 미들웨어(115) 또는 API(117))에 구현된 동작 또는 기능을 실행하는데 수반되는 시스템 리소스들(예: 메모리(110) 또는 프로세서(150) 등)을 제어 또는 관리할 수 있다. 커널(113)은 어플리케이션 프로그램(111), 미들웨어(115) 또는 API(117)에서 전자 장치(100)의 개별 구성요소에 접근하여 시스템 리소스들을 제어 또는 관리할 수 있도록 인터페이스를 제공할 수 있다.
상기 미들웨어(115)는 어플리케이션 프로그램(111) 또는 API(117)가 커널(113)과 통신하여 데이터를 송신 또는 수신할 수 있도록 중개 역할을 수행할 수 있다. 또한, 미들웨어(115)는 어플리케이션 프로그램(111)으로부터 수신된 적어도 하나의 작업 요청을 우선 순위에 따라 처리할 수 있다. 예를 들어, 미들웨어(115)는 어플리케이션 프로그램(111) 중 적어도 하나에 전자 장치(100)의 시스템 리소스(예: 메모리(110) 또는 프로세서(150) 등)를 사용할 수 있는 우선 순위를 부여할 수 있다. 미들웨어(115)는 상기 우선 순위에 따라 상기 적어도 하나의 작업 요청에 대한 스케줄링 또는 로드 밸런싱 등을 수행할 수 있다.
상기 API(117)는 어플리케이션 프로그램(111)이 커널(113) 또는 미들웨어(115)에서 제공되는 기능을 제어하기 위한 인터페이스로, 예를 들면 파일 제어, 창 제어, 영상 처리 또는 문자 제어 등을 위한 적어도 하나의 인터페이스 또는 함수(예: 명령어)를 포함할 수 있다.
다양한 실시 예에서, 메모리(110)는 휘발성 메모리(예: DRAM(dynamic RAM), SRAM(static RAM) 또는 SDRAM(synchronous dynamic RAM) 등), 비휘발성 메모리(예: OTPROM(one time programmable ROM), PROM(programmable ROM), EPROM(erasable and programmable ROM) 또는 EEPROM(electrically erasable and programmable ROM) 등), 마스크(mask) ROM, 플래시(flash) ROM 또는 플래시 메모리 중 적어도 하나를 포함할 수 있다.
디스플레이(120)는 각종 콘텐츠(예: 텍스트, 이미지, 비디오, 아이콘 또는 심볼 등)를 출력 또는 표시할 수 있다. 예를 들어, 디스플레이(120)는 프로세서(150)의 제어에 대응하여 메모리(110)에 저장된 적어도 하나의 콘텐츠를 표시할 수 있다. 또는, 디스플레이(120)는 서버(6)로부터 스트리밍 받는 적어도 하나의 콘텐츠를 실시간으로 표시할 수 있다.
다양한 실시 예에서, 디스플레이(120)는 액정 디스플레이(Liquid Crystal Display; LCD), 발광 다이오드(Light-Emitting Diode; LED) 디스플레이, 유기 발광 다이오드(Organic LED; OLED) 디스플레이, 마이크로 전자기계 시스템(microelectromechanical systems; MEMS) 디스플레이 또는 전자 종이(electronic paper) 디스플레이를 포함할 수 있다. 또한, 디스플레이(120)는 터치스크린 디스플레이를 포함할 수 있으며, 상기 터치스크린 디스플레이를 기반으로 예컨대, 사용자 신체의 일부(예: 손가락) 또는 전자 펜 등을 이용한 터치, 제스처, 근접 또는 호버링(hovering) 입력을 수신할 수 있다.
통신 인터페이스(130)는 전자 장치(100)와 외부 장치(5) 또는 서버(6) 간의 통신을 설정할 수 있다. 예를 들어, 전자 장치(100)는 통신 인터페이스(130)를 기반으로 네트워크(4)에 접속함으로써, 외부 장치(5) 또는 서버(6)와 무선 통신 또는 유선 통신을 수행할 수 있다. 상기 네트워크(4)는 컴퓨터 네트워크(computer network)(예: LAN 또는 WAN), 인터넷 또는 전화 망(telephone network) 중 적어도 하나를 포함할 수 있다.
다양한 실시 예에서, 상기 무선 통신은 셀룰러 통신 프로토콜로써, LTE(Long-Term Evolution), LTE-A(LTE-Advanced), CDMA(Code Division Multiple Access), WCDMA(Wideband CDMA), UMTS(Universal Mobile Telecommunications System), WiBro(Wireless Broadband) 또는 GSM(Global System for Mobile Communications) 중 적어도 하나를 포함할 수 있다. 또한, 무선 통신은 Wi-Fi(Wireless Fidelity), Bluetooth, NFC(Near Field Communication) 또는 MST(magnetic stripe transmission) 등과 같은 근거리 통신을 포함할 수 있다.
다양한 실시 예에서, 전자 장치(100)는 별도의 외부 장치(또는, 서버)로부터 다운로드 또는 스트리밍 받는 콘텐츠 이외에도, 자체적으로 콘텐츠를 생성할 수 있다. 이를 위해, 전자 장치(100)는 적어도 하나의 카메라 모듈(140)을 포함할 수 있다. 상기 적어도 하나의 카메라 모듈(140)은 상호 상이한 방향 또는 영역에 대한 영상(예: 스틸(still) 이미지 또는 동영상)을 촬영하도록 전자 장치(100)에 배치될 수 있다. 예를 들어, 적어도 하나의 카메라 모듈(140)은 각각 120도씩 분할된 영역을 촬영하도록 전자 장치(100) 상에 배치될 수 있다. 또는, 적어도 하나의 카메라 모듈(140)은 전자 장치(100)의 전방 및 후방을 촬영하도록, 전자 장치(100) 상에서 상반되는 위치에 배치될 수 있다. 상기 적어도 하나의 카메라 모듈(140)은 전자 장치(100)에서 지정된 지점에 고정되거나 또는, 사용자 제어에 대응하여 촬영 방향(또는, 촬영 영역)이 변경되도록 적어도 일 부분 유동 가능할 수 있다. 다양한 실시 예에서, 적어도 하나의 카메라 모듈(140)에 의하여 촬영된 영상은 예컨대, 프로세서(150)의 편집(예: 스티칭(stitching)) 하에 VR 콘텐츠로 구현되어 메모리(110)에 저장될 수 있다.
프로세서(150)는 전자 장치(100)의 적어도 하나의 다른 구성요소와 전기적 또는 기능적으로 연결되어, 구성요소에 대한 제어, 통신 연산 또는 데이터 처리 등을 수행할 수 있다. 예를 들어, 프로세서(150)는 사용자 제어 또는 지정된 스케줄링 정보에 대응하여 활성화된(또는, 출력이 명령된) 콘텐츠에 대한 데이터를 분석할 수 있다. 예를 들어, 프로세서(150)는 활성화된 콘텐츠가 외부 장치(5) 또는 서버(6)로부터 스트리밍 받은 것일 경우, 콘텐츠에 대한 태그(tag) 정보 또는 URL 정보를 분석할 수 있다. 또는, 프로세서(150)는 활성화된 콘텐츠가 메모리(110)에 저장된 것일 경우, 저장된 파일명 정보를 분석할 수 있다. 일 실시 예에서, 활성화된 콘텐츠에 대한 데이터가 부재하거나 또는 명확한 정보가 포함되어 있지 않을 경우, 프로세서(150)는 상기 콘텐츠에 대한 데이터 분석의 일환으로 지정된 적어도 하나의 조건 만족 여부를 판단할 수 있다. 이에 대해서는 후술되는 도 3a 내지 도 10을 통하여 설명하기로 한다.
일 실시 예에서, 프로세서(150)는 상기 데이터 분석의 결과 또는 상기 조건 만족 여부에 대한 판단 결과를 기반으로 활성화된 콘텐츠의 속성을 판단할 수 있다. 상기 콘텐츠의 속성이 예컨대, 2D, 3D SBS(Side By Side), 3D TB(Top and Bottom) 또는 360도 중 적어도 하나에 부합하는 경우, 프로세서(150)는 상기 활성화된 콘텐츠를 VR 콘텐츠로 판단할 수 있다. 프로세서(150)는 판단된 VR 콘텐츠에 대한 정보를 데이터베이스로 구축하여 메모리(110)에 저장함으로써, 전자 장치(100)에 저장되었거나, 외부 장치(5) 또는 서버(6)로부터 스트리밍 받은 적어도 하나의 콘텐츠 가운데 상기 VR 콘텐츠를 별도로 관리할 수 있다.
일 실시 예에서, 프로세서(150)는 활성화된 콘텐츠가 VR 콘텐츠로 판단되는 경우, 상기 VR 콘텐츠의 속성(예: 2D, 3D SBS, 3D TB 또는 360도)에 부합하는 플레이어를 식별할 수 있다. 프로세서(150)는 메모리(110)에 저장된 적어도 하나의 어플리케이션 프로그램(111) 중 상기 식별된 플레이어를 포함하는 특정 어플리케이션 프로그램(111)(또는, 출력모드(VR 콘텐츠의 속성에 부합하는 플레이어를 실행시키는 모드))의 실행을 제어할 수 있다. 예를 들어, 프로세서(150)는 상기 VR 콘텐츠가 3D 속성으로 판단되는 경우, 3D 플레이어를 포함하는 어플리케이션 프로그램(또는, 출력모드)을 실행시켜 상기 VR 콘텐츠의 출력을 처리하도록 제어할 수 있다.
입출력 인터페이스(160)는 사용자 또는 다른 외부 기기로부터 입력된 명령 또는 데이터를 전자 장치(100)의 다른 구성요소에 전달할 수 있다. 또는, 입출력 인터페이스(160)는 전자 장치(100)의 다른 구성요소로부터 수신된 명령 또는 데이터를 사용자 또는 다른 외부 기기로 출력할 수 있다.
이하에서는, 활성화된(또는, 출력이 명령된) 콘텐츠의 데이터(예: 태그 정보, URL 정보 또는 파일명 정보 등) 분석을 통하여 상기 콘텐츠의 속성이 판단되지 않거나, 또는 판단된 속성을 재확인할 경우와 관련하여, 상기 활성화된 콘텐츠에 대한 지정된 적어도 하나의 조건 만족 여부를 기반으로 콘텐츠의 속성을 판단하고, 판단된 콘텐츠 속성에 따라 출력을 제어하는 다양한 실시 예들을 살펴보기로 한다.
도 3a, 도 3b 및 도 3c는 제1 실시 예에 따른 콘텐츠 속성 판단의 다양한 형태를 도시한 도면이다.
일 실시 예에서, 전자 장치(도 2의 100)의 프로세서(도 2의 150)는 활성화된(또는, 출력이 명령된) 콘텐츠에 대한 적어도 하나의 프레임 각각을 분석하여 메인 프레임을 추출할 수 있다. 프로세서(150)는 예컨대, 윤곽선 검출 필터(edge detection filter) 또는 액티브 컨투어 모델(active contours model) 등의 이미지 프로세싱을 기반으로 콘텐츠를 구성하는 각각의 프레임에 대하여 객체(또는, 오브젝트(object))를 검출할 수 있다. 이 동작에서, 프로세서(150)는 예컨대, 적어도 하나의 프레임 중 지정된 크기 이상의 객체가 상대적으로 많이 검출된 어느 하나를 상기 메인 프레임으로 지정할 수 있다.
도 3a를 참조하면, 프로세서(150)는 활성화된(또는, 출력이 명령된) 콘텐츠의 메인 프레임(10) 상에서 제1 내지 제4 영역(310, 320, 330, 340)에 대한 픽셀 정보를 분석할 수 있다. 예를 들어, 프로세서(150)는 제1 영역(310)에 포함된 복수의 픽셀 각각에 대하여 컬러 값(예: RGBA 값)을 분석할 수 있다. 프로세서(150)는 제1 영역(310)에 포함된 복수의 픽셀들의 컬러 값을 상호 비교하여 지정된 비율 이상의 일치 여부를 판단할 수 있다. 프로세서(150)는 제2 영역(320)에 대하여 상술한 제1 영역(310)과 동일 또는 유사하게 픽셀 정보를 분석할 수 있다. 제3 영역(330) 및 제4 영역(340)의 경우, 프로세서(150)는 상호 영역(330 및 340) 간에 동일한 Y좌표(또는, 동일한 높이)로 대응되는 픽셀들의 컬러 값이 지정된 비율 이상으로 일치하는지 여부를 판단할 수 있다.
일 실시 예에서, 프로세서(150)는 활성화된 콘텐츠에 대하여 상기 픽셀 정보 분석(또는, 컬러 값 분석)을 수행함으로써, 360도 속성을 갖는 VR 콘텐츠에 대한 해당 여부를 판단할 수 있다. 이와 관련하여, 상기 메인 프레임(10)을 포함하는 콘텐츠의 속성이 360도인 경우를 가정하면, 상기 메인 프레임(10)은 예컨대, 3차원의 구 오브젝트(20)에 매핑(mapping)될 수 있다. 이 경우, 메인 프레임(10)의 제1 영역(310) 및 제2 영역(320) 각각은 구 오브젝트(20)의 상부 극(pole) 영역 및 하부 극 영역에 대응될 수 있다. 또한, 메인 프레임(10)의 제3 영역(330) 및 제4 영역(340) 상호는 구 오브젝트(20)의 임의의 구면(spherical surface) 영역에서 상접할 수 있다. 이에 기초하면, 프로세서(150)는 제1 영역(310)에 포함된 복수의 픽셀들 간의 컬러 값 및 제2 영역(320)에 포함된 복수의 픽셀들 간의 컬러 값이 지정된 비율 이상으로 일치하고, 제3 영역(330) 및 제4 영역(340) 간에 동일한 Y좌표(또는, 동일한 높이)로 대응되는 픽셀들의 컬러 값이 지정된 비율 이상으로 일치하는 경우, 상기 메인 프레임(10)을 포함하는 콘텐츠를 360도 속성의 VR 콘텐츠로 판단할 수 있다.
다양한 실시 예에서, 360도 속성의 VR 콘텐츠는 구 오브젝트(20)뿐만 아니라, 다양한 다면체 오브젝트에 매핑될 수 있다. 예를 들어, 도 3b를 참조하면, 콘텐츠의 메인 프레임(11)은 정육면체 오브젝트(30)에 매핑될 수 있다. 이 경우, 메인 프레임(11) 상의 제1 영역(350) 및 제2 영역(360) 상호는 매핑되는 정육면체 오브젝트(30)의 임의의 모서리 영역에서 상접 또는 인접할 수 있다. 프로세서(150)는 제1 영역(350) 및 제2 영역(360) 간에 동일한 Y좌표(또는, 동일한 높이)로 대응하는 픽셀들의 컬러 값이 상호 지정된 비율 이상일 경우, 메인 프레임(11)을 포함하는 콘텐츠를 360도 속성의 VR 콘텐츠로 판단할 수 있다.
도 3c를 참조하면, 콘텐츠의 메인 프레임(12)은 삼각뿔 오브젝트(40)에 매핑될 수 있다. 프로세서(150)는 상기 삼각뿔 오브젝트(40)의 임의의 모서리 영역에서 상접 또는 인접하는 메인 프레임(12)의 제1 영역(370) 및 제2 영역(380)에 대한 픽셀 정보를 분석할 수 있다. 프로세서(150)는 상기 제1 영역(370) 및 제2 영역(380) 간에 대응되는(또는, 상접 또는 인접하는) 픽셀들의 컬러 값이 상호 지정된 비율 이상인 경우, 상기 메인 프레임(12)을 포함하는 콘텐츠를 360도 속성의 VR 콘텐츠로 판단할 수 있다. 다양한 실시 예에서, VR 콘텐츠가 매핑될 수 있는 오브젝트는 상술된 구 오브젝트(20), 정육면체 오브젝트(30) 또는 삼각뿔 오브젝트(40)로 한정되는 것은 아니며, 이외에도 다양한 형상의 오브젝트가 적용될 수 있다. 이하에서는, 360도 속성의 VR 콘텐츠에 대하여 구 오브젝트(20)에 매핑되는 실시 예를 일례로 하여 설명한다.
도 4는 제2 실시 예에 따른 콘텐츠 속성 판단의 형태를 도시한 도면이다.
도 4를 참조하면, 활성화된(또는, 출력이 명령된) 콘텐츠의 메인 프레임(10)은 횡 방향(w) 및 종 방향(h)에 대하여 임의의 길이 비율을 포함할 수 있다. 도 3a 및 도 4를 참조하면, 360도 속성의 VR 콘텐츠는 구 오브젝트(20)에 매핑될 수 있다. 이 때, 360도 VR 콘텐츠의 상단 영역(예: 도 3a의 제1 영역(310)) 및 하단 영역(예: 도 3a의 제2 영역(320)) 각각은 구 오브젝트(20)의 상부 극(pole) 영역 및 하부 극 영역에 대응되므로, 360도 VR 콘텐츠의 횡 방향(w) 폭은 구 오브젝트(20)를 둘러싸며 매핑될 수 있다. 이에 기초하면, 일 실시 예에서 메인 프레임(10)의 횡 방향(w) 길이는 구 오브젝트(20)의 둘레 길이에 대응되고, 종 방향(h) 길이는 상기 구 오브젝트(20)의 둘레 길이에 대한 절반 길이에 대응될 수 있다.
일 실시 예에서, 전자 장치(도 2의 100)의 프로세서(도 2의 150)는 상술한 바와 같이 메인 프레임(10)의 횡 방향(w) 및 종 방향(h)에 대한 길이 비율이 지정된 비율(예: 2:1)과 동일하거나 또는, 지정된 비율 범위 이내에 포함되는 경우, 상기 메인 프레임(10)을 포함하는 콘텐츠를 360도 속성의 VR 콘텐츠로 판단할 수 있다.
도 5는 제3 실시 예에 따른 콘텐츠 속성 판단의 형태를 도시한 도면이다.
일 실시 예에 따르면, 360도 속성의 VR 콘텐츠는 구 형태의 오브젝트(예: 도 3a의 20)에 매핑됨에 따라, 상기 360도 속성의 VR 콘텐츠 내에 존재하는 횡 방향 직선은 적어도 일부가 곡선의 형상으로 변형될 수 있다. 도 5를 참조하면, 전자 장치(도 2의 100)의 프로세서(도 2의 150)는 활성화된(또는, 출력이 명령된) 콘텐츠의 메인 프레임(10)에 대하여 이미지 프로세싱(예: 윤곽선 검출 필터, 액티브 컨투어 모델 등)을 수행함으로써 지정된 크기 이상의 적어도 하나의 곡선(C1 및/또는 C3)을 추출할 수 있다.
일 실시 예에서, 프로세서(150)는 메인 프레임(10) 상에 상기 메인 프레임(10)을 종 방향으로 이등분하는 가상의 경계선을 부여할 수 있다. 프로세서(150)는 상기 종 방향 경계선에 의하여 분할된 메인 프레임(10)의 좌측 영역 및 우측 영역 중 어느 하나(예: 좌측 영역)에 구 오브젝트의 단면(21)을 오버랩(overlap) 또는 투영시킬 수 있다.
일 실시 예에서, 프로세서(150)는 추출된 적어도 하나의 곡선(C1 및/또는 C3)과 구 오브젝트의 단면(21)에 대한 외곽선 중 적어도 일부(예: 22)와의 곡률을 비교할 수 있다. 만일, 메인 프레임(10)을 포함하는 콘텐츠의 속성이 360도일 경우, 상기 메인 프레임(10)은 구 오브젝트(예: 도 3a의 20)에 매핑됨에 따라, 메인 프레임(10) 내의 곡선(C1 및/또는 C3)에 대한 곡률은 구 오브젝트 단면(21)의 외곽선에 대한 곡률보다 작을 수 있다. 프로세서(150)는 메인 프레임(10) 내에 상기 구 오브젝트 단면(21)의 외곽선 곡률보다 작은 곡률을 갖는 적어도 하나의 곡선이 지정된 수량 이상으로 존재할 경우, 상기 메인 프레임(10)을 포함하는 콘텐츠를 360도 속성의 VR 콘텐츠로 판단할 수 있다.
도 6은 제4 실시 예에 따른 콘텐츠 속성 판단의 형태를 도시한 도면이다.
도 6을 참조하면, 일 실시 예에서 전자 장치(도 2의 100)의 프로세서(도 2의 150)는 도 5를 통하여 전술한 바와 동일 또는 유사한 방식(예: 이미지 프로세싱)으로 메인 프레임(10) 내에 존재하는 지정된 크기 이상의 적어도 하나의 곡선(C1, C2, C3 및/또는 C4)을 추출할 수 있다. 프로세서(150)는 메인 프레임(10) 상에 상기 메인 프레임(10)을 횡 방향으로 이등분하는 가상의 경계선을 부여할 수 있다.
일 실시 예에서, 메인 프레임(10)을 포함하는 콘텐츠가 360도 속성을 갖는 경우, 상기 횡 방향 경계선을 기준하여 메인 프레임(10)의 상부 영역은 구 오브젝트(예: 도 3a의 20)의 상부 반구에 매핑되고, 하부 영역은 하부 반구에 매핑될 수 있다. 이에 따르면, 상기 횡 방향 경계선의 상부 영역에 존재하는 적어도 하나의 곡선은 상기 횡 방향 경계선을 기준하여 상부 방향으로 굴절되고, 대응적으로 횡 방향 경계선의 하부 영역에 존재하는 적어도 하나의 곡선은 하부 방향으로 굴절될 수 있다.
일 실시 예에서, 프로세서(150)는 메인 프레임(10) 내에서 추출된 적어도 하나의 곡선(C1, C2, C3 및/또는 C4) 각각에 대하여 굴절 방향을 분석할 수 있다. 프로세서(150)는 추출된 적어도 하나의 곡선(C1, C2, C3 및/또는 C4)과 메인 프레임(10)을 분할하는 횡 방향 경계선 간의 상대적 위치를 판단할 수 있다. 일 실시 예에 따르면, 프로세서(150)는 상기 횡 방향 경계선의 상부 영역에서 상부 방향으로 굴절된 곡선이 하부 방향으로 굴절된 곡선에 상대적으로 더 많이 존재하거나, 상기 횡 방향 경계선의 하부 영역에서 하부 방향으로 굴절된 곡선이 상부 방향으로 굴절된 곡선보다 더 많이 존재하는 경우, 상기 메인 프레임(10)을 포함하는 콘텐츠를 360도 속성의 VR 콘텐츠로 판단할 수 있다.
도 7은 제5 실시 예에 따른 콘텐츠 속성 판단의 형태를 도시한 도면이다.
도 7을 참조하면, 360도 속성의 VR 콘텐츠 내에 포함된 적어도 하나의 횡 방향 직선은 상기 VR 콘텐츠와 구 오브젝트(예: 도 3a의 20) 간의 매핑과 관련하여 적어도 일부가 곡선의 형상(예: C1)으로 변형될 수 있다. 상기 360도 속성의 VR 콘텐츠 내에 포함된 종 방향 직선은 본연의 형태를 유지하며 상기 구 오브젝트(20)에 매핑될 수 있다. 다시 말해, 360도 속성의 VR 콘텐츠가 구 오브젝트(20)에 매핑됨에 따라, 상기 360도 속성의 VR 콘텐츠 내에서 횡 방향 직선은 곡선으로 변형되고, 종 방향 직선은 별도로 변형되지 않을 수 있다.
일 실시 예에서, 전자 장치(도 2의 100)의 프로세서(도 2의 150)는 활성화된(또는, 출력이 명령된) 콘텐츠의 메인 프레임(10)에 대한 이미지 프로세싱(예: 윤곽선 검출 필터 또는 액티브 컨투어 모델 등)을 수행하여 지정된 크기 이상의 적어도 하나의 종 방향 직선(S1, S2 및/또는 S3) 및 횡 방향 직선을 추출할 수 있다. 프로세서(150)는 추출된 적어도 하나의 종 방향 직선(S1, S2 및/또는 S3) 및 횡 방향 직선 각각의 수량을 산출할 수 있다. 상술한 바와 같이 360도 속성의 VR 콘텐츠에 포함된 횡 방향 직선은 적어도 일부가 곡선 형상(예: C1)으로 변형됨에 따라, 프로세서(150)는 상기 메인 프레임(10) 내에 종 방향 직선(S1, S2 및/또는 S3)의 수량이 횡 방향 직선에 비하여 상대적으로 많이 존재할 경우, 상기 메인 프레임(10)을 포함하는 콘텐츠를 360도 속성의 VR 콘텐츠로 판단할 수 있다.
다양한 실시 예에 따르면, 전자 장치(도 2의 100)의 프로세서(도 2의 150)는 도 3a 내지 도 7을 통하여 전술한 제1 내지 제5 실시 예에 따른 콘텐츠 속성 판단 조건들에 대하여 상호 상이한 비중을 부여할 수 있다. 예를 들어, 프로세서(150)는 상기 콘텐츠 속성 판단 조건들 중 판단 근거의 정확도 또는 판단 결과의 신뢰성이 상대적으로 높은 조건에 높은 레벨의 가중 값을 부여하고, 이외의 조건들에 대하여 순차적인 레벨의 가중 값을 부여할 수 있다. 다양한 실시 예에서, 상기 판단 근거의 정확도 또는 판단 결과의 신뢰성에 대한 기준은 사용자에 의하여 설정되거나, VR 시스템 운용 정보로써 전자 장치(100) 상에 기 설정될 수 있다.
다양한 실시 예에서, 프로세서(150)는 상술된 제1 내지 제5 실시 예에 따른 콘텐츠 속성 판단을 상기 가중 값이 높게 할당된 조건들의 순차로 수행할 수 있다. 이 동작에서 예컨대, 제1 내지 제5 실시 예에 따른 콘텐츠 속성 판단을 모두 수행하기 이전에, 활성화된(또는, 출력이 명령된) 콘텐츠가 만족되는 적어도 하나의 조건들에 대한 가중 값 합산이 지정된 임계 값 이상이 될 수 있다. 이 경우, 프로세서(150)는 콘텐츠 속성 판단이 수행되지 않은 이후 순차의 조건에 대한 만족 여부 판단을 배제하고, 상기 활성화된 콘텐츠의 속성을 360도로 판단할 수 있다.
일 실시 예에서, 프로세서(150)는 활성화된(또는, 출력이 명령된) 콘텐츠의 속성 판단과 동시에 또는, 판단으로부터 지정된 시간 이내에 상기 활성화된 콘텐츠의 속성에 부합하는 플레이어를 식별할 수 있다. 프로세서(150)는 식별된 플레이어를 포함하는 특정 어플리케이션 프로그램(이하 제1 어플리케이션이라 칭함)(또는, 출력모드(VR 콘텐츠의 속성에 부합하는 플레이어를 실행시키는 모드))을 식별할 수 있다. 이 동작에서, 프로세서(150)는 디스플레이(도 2의 120)를 제어하여 상기 제1 어플리케이션의 실행과 관계된 적어도 하나의 표시 객체를 출력할 수 있다. 상기 표시 객체는 예컨대, 사용자로 하여금 상기 제1 어플리케이션의 실행을 제어하도록 제공되는 인터페이스로, 상기 제1 어플리케이션의 실행을 제어하기 위한 아이콘, 버튼 또는 탭(tap) 등을 포함할 수 있다.
다양한 실시 예에서, 프로세서(150)는 상기 표시 객체의 출력과 동시에 또는, 지정된 시간 차로 디스플레이(120) 영역의 적어도 일부에 상기 제1 어플리케이션(또는, 제1 어플리케이션에 포함된 플레이어)을 통하여 출력(또는, 재생)되는 콘텐츠의 섬네일(thumbnail) 이미지 또는 프리뷰(preview) 이미지 중 적어도 하나를 출력할 수 있다. 일 실시 예에서, 사용자가 상기 표시 객체에 포함된 아이콘, 버튼 또는 탭에 입력을 인가하거나, 상기 섬네일 이미지 또는 상기 프리뷰 이미지 중 적어도 하나에 입력을 인가하면, 프로세서(150)는 사용자 입력에 대응하여 제1 어플리케이션의 실행을 제어할 수 있다. 프로세서(150)는 상기 제1 어플리케이션(또는, 제1 어플리케이션에 포함된 플레이어)을 기반으로 상기 활성화된 콘텐츠의 출력을 처리할 수 있다.
도 8은 제6 실시 예에 따른 콘텐츠 속성 판단의 형태를 도시한 도면이다.
일 실시 예에 따르면, 3D 속성의 VR 콘텐츠는 양안시차 구현과 관련하여 사용자의 양안에 대응하는 좌안 콘텐츠 및 우안 콘텐츠를 포함할 수 있다. 이에 따라, 상기 3D 속성의 VR 콘텐츠 내에는 상기 좌안 콘텐츠 및 우안 콘텐츠를 구분 짓기 위한 경계선이 포함될 수 있다. 다양한 실시 예에서, 상기 경계선은 3D 속성의 형태에 따라 종 방향으로 구성되거나(예: 3D SBS 포맷) 또는 횡 방향으로 구성될 수 있다(예: 3D TB 포맷).
도 8을 참조하면, 전자 장치(도 2의 100)의 프로세서(도 2의 150)는 활성화된(또는, 출력이 명령된) 콘텐츠의 메인 프레임(10)에 대한 이미지 프로세싱(예: 예: 윤곽선 검출 필터 또는 액티브 컨투어 모델 등)을 수행하여 지정된 크기 또는 길이 이상의 직선을 추출할 수 있다. 상기 직선은 예컨대, 종 방향 또는 횡 방향 직선을 포함할 수 있다. 프로세서(150)는 상기 메인 프레임(10)의 중심부로부터 지정된 크기의 영역(13) 내에 상기 지정된 크기 또는 길이 이상의 직선(14)이 적어도 일부가 포함된 경우, 상기 메인 프레임(10)을 포함하는 콘텐츠를 3D 속성의 VR 콘텐츠로 판단할 수 있다.
도 9 및 도 10은 각각 제7 실시 예 및 제8 실시 예에 따른 콘텐츠 속성 판단의 형태를 도시한 도면이다.
일 실시 예에서, 3D 속성을 갖는 VR 콘텐츠의 경우, 좌안 콘텐츠 및 우안 콘텐츠 상호는 유사 또는 대응될 수 있다. 다만, 3D 속성의 VR 콘텐츠는 양안시차 특성에 따라 좌안 콘텐츠 및 우안 콘텐츠 간에 적어도 일부 요인이 상이할 수 있다. 예를 들어, 상기 좌안 콘텐츠 및 우안 콘텐츠 각각에 포함되는 제1 객체(또는, 오브젝트) 상호는 Y좌표는 동일하지만 X좌표는 상이할 수 있다.
도 9를 살펴보면, 일 실시 예에서 전자 장치(도 2의 100)의 프로세서(도 2의 150)는 활성화된(또는, 출력이 명령된) 콘텐츠의 메인 프레임(10)에 대한 이미지 프로세싱을 수행하여 지정된 크기 이상의 적어도 하나의 객체(또는, 오브젝트)를 검출할 수 있다. 이 동작에서, 상기 객체가 복수로 검출되는 경우, 프로세서(150)는 복수의 객체들을 상호 비교하여 지정된 비율 이상으로 일치하는 적어도 하나의 객체 쌍을 검출할 수 있다. 예를 들어, 메인 프레임(10) 내에 상기 지정된 비율 이상으로 일치하는 객체 쌍(15a 및 15b)이 존재하면, 프로세서(150)는 상기 객체 쌍을 구성하는 제1 객체(15a) 및 제2 객체(15b) 각각에 대한 좌표를 산출할 수 있다. 프로세서(150)는 제1 객체(15a) 및 제2 객체(15b) 간의 좌표를 비교할 수 있다. 일 실시 예에서, 상기 제1 객체(15a) 및 제2 객체(15b)에 대한 좌표들이 X축 좌표에 관계없이 동일한 Y축 좌표를 포함하는 경우, 프로세서(150)는 상기 메인 프레임(10)을 포함하는 콘텐츠를 3D 속성의 VR 콘텐츠로 판단할 수 있다.
도 10을 참조하면, 프로세서(150)는 메인 프레임(10)의 종 방향 절반 영역에 해당하는 제1 영역(10a)에 대하여 이미지 프로세싱을 수행하고, 상기 제1 영역(10a)에서 검출되는 적어도 하나의 객체(16, 17 및/또는 18)의 수량을 산출할 수 있다. 대응적으로, 프로세서(150)는 메인 프레임(10)에서 상기 제1 영역(10a)을 제외한 제2 영역(10b)에 대하여 객체를 검출하고, 그 수량을 산출할 수 있다. 일 실시 예에서, 프로세서(150)는 제2 영역(10b)에서 상기 제1 영역(10a)에 포함된 적어도 하나의 객체(16, 17 및/또는 18) 수량과 동일한 객체 수량이 산출되는 경우, 메인 프레임(10)을 포함하는 콘텐츠를 3D 속성의 VR 콘텐츠로 판단할 수 있다.
다양한 실시 예에서, 활성화된(또는, 출력이 명령된) 콘텐츠의 3D 속성 판단과 관련한 동작들은 전술된 콘텐츠의 360도 속성 판단 동작과 동일 또는 대응될 수 있다. 예를 들어, 프로세서(150)는 상기 제6 내지 제8 실시 예에 따른 콘텐츠 속성 판단 조건들에 대하여 순차적인 레벨의 가중 값을 부여하고, 상기 가중 값에 근거하여 콘텐츠 속성 판단 조건들에 대한 만족 여부 판단을 순차로 수행할 수 있다. 프로세서(150)는 상기 활성화된 콘텐츠가 만족되는 적어도 하나의 조건들에 대한 가중 값 합산이 지정된 임계 값 이상인 경우, 이후 순차의 콘텐츠 속성 판단 조건에 대한 만족 여부 판단을 배제하고, 상기 활성화된 콘텐츠를 3D 속성의 VR 콘텐츠로 판단할 수 있다.
일 실시 예에서, 프로세서(150)는 상기 활성화된 콘텐츠의 속성이 3D로 판단되면, 3D 속성에 부합하는 플레이어를 포함하는 어플리케이션 프로그램(이하 제2 어플리케이션이라 칭함)(또는, 출력모드(VR 콘텐츠의 속성에 부합하는 플레이어를 실행시키는 모드))을 식별할 수 있다. 프로세서(150)는 식별된 제2 어플리케이션의 실행 제어와 관련하여 도 7을 통해 전술한 표시 객체, 섬네일 이미지 또는 프리뷰 이미지를 출력할 수 있다. 프로세서(150)는 상기 표시 객체, 섬네일 이미지 또는 프리뷰 이미지에 사용자 입력이 인가되는 경우, 상기 제2 어플리케이션의 실행을 제어하여 상기 활성화된 콘텐츠의 출력을 처리할 수 있다.
전술한 다양한 실시 예에 따른 전자 장치는, 하우징, 적어도 하나의 콘텐츠 및 상기 콘텐츠의 출력과 관계된 적어도 하나의 어플리케이션을 저장하는 메모리, 상기 하우징의 일 영역을 통하여 노출되며 상기 콘텐츠를 표시하는 디스플레이 및 상기 메모리 및 상기 디스플레이와 전기적으로 연결되는 프로세서를 포함할 수 있다.
다양한 실시 예에 따르면, 상기 프로세서는 입력에 의하여 선택된 콘텐츠에 대하여 지정된 적어도 하나의 조건 만족 여부를 기반으로 적어도 일 부분의 속성을 판단하고, 상기 속성이 VR(virtual reality) 콘텐츠에 관계되는 것으로 판단되면, VR 콘텐츠의 출력과 관계된 어플리케이션의 실행을 기반으로 상기 선택된 콘텐츠를 출력할 수 있다.
다양한 실시 예에 따르면, 상기 프로세서는 상기 적어도 하나의 조건 각각에 지정된 가중 값을 부여하고, 상기 선택된 콘텐츠가 만족되는 적어도 하나의 조건에 대한 가중 값의 합산을 지정된 임계 값과 비교하여 상기 선택된 콘텐츠의 속성을 판단할 수 있다.
다양한 실시 예에 따르면, 상기 프로세서는 상기 선택된 콘텐츠 상의 제1 영역에 포함된 복수의 픽셀들 간의 컬러 값, 제2 영역에 포함된 복수의 픽셀들 간의 컬러 값, 및 제3 영역 및 제4 영역 간에 동일한 Y좌표로 대응하는 픽셀들 간의 컬러 값이 지정된 비율 이상으로 일치하면, 상기 선택된 콘텐츠를 360도 속성의 VR 콘텐츠로 판단할 수 있다.
다양한 실시 예에 따르면, 상기 프로세서는 상기 선택된 콘텐츠에 대한 횡 방향 길이 및 종 방향 길이 비율이 지정된 비율에 포함되는 경우, 상기 선택된 콘텐츠를 360도 속성의 VR 콘텐츠로 판단할 수 있다.
다양한 실시 예에 따르면, 상기 프로세서는 상기 선택된 콘텐츠에 포함된 지정된 크기 이상의 곡선에 대한 곡률 정보와 상기 선택된 콘텐츠가 매핑되는 3차원의 구 오브젝트에 대한 곡률 정보를 비교하고, 상기 선택된 콘텐츠가 상기 구 오브젝트에 대한 곡률보다 작은 곡률의 곡선을 지정된 수량 이상으로 포함하는 경우, 상기 선택된 콘텐츠를 360도 속성의 VR 콘텐츠로 판단할 수 있다.
다양한 실시 예에 따르면, 상기 프로세서는 상기 선택된 콘텐츠에 상기 선택된 콘텐츠를 횡 방향으로 분할하는 가상의 경계선을 부가하고, 상기 경계선을 기준하여 상부 영역에서 상측 방향을 향하여 굴절된 적어도 하나의 곡선이 하측 방향을 향하여 굴절된 적어도 하나의 곡선보다 많이 존재하거나, 상기 경계선을 기준하여 하부 영역에서 하측 방향을 향하여 굴절된 적어도 하나의 곡선이 상측 방향을 향하여 굴절된 적어도 하나의 곡선보다 많이 존재하는 경우, 상기 선택된 콘텐츠를 360도 속성의 VR 콘텐츠로 판단할 수 있다.
다양한 실시 예에 따르면, 상기 프로세서는 상기 선택된 콘텐츠에 포함된 지정된 크기 이상의 종 방향 직선에 대한 수량 및 횡 방향 직선에 대한 수량을 비교하고, 상기 종 방향 직선에 대한 수량이 상기 횡 방향 직선에 대한 수량에 상대적으로 많은 경우, 상기 선택된 콘텐츠를 360도 속성의 VR 콘텐츠로 판단할 수 있다.
다양한 실시 예에 따르면, 상기 프로세서는 상기 선택된 콘텐츠의 중심부에 지정된 크기의 영역을 지정하고, 상기 지정된 크기의 영역 내에 지정된 크기 또는 길이 이상의 횡 방향 직선 또는 종 방향 직선 중 어느 하나가 포함되는 경우, 상기 선택된 콘텐츠를 3D 속성의 VR 콘텐츠로 판단할 수 있다.
다양한 실시 예에 따르면, 상기 프로세서는 상기 선택된 콘텐츠 내에서 지정된 비율 이상으로 일치하는 적어도 하나의 객체 쌍을 검출하고, 상기 적어도 하나의 객체 쌍을 구성하는 객체들 상호 간이 상기 선택된 콘텐츠 상에서 동일한 Y축 좌표를 포함하는 경우, 상기 선택된 콘텐츠를 3D 속성의 VR 콘텐츠로 판단할 수 있다.
다양한 실시 예에 따르면, 상기 프로세서는 상기 선택된 콘텐츠를 상호 동일한 면적의 제1 영역 및 제2 영역으로 분할하고, 상기 제1 영역 및 제2 영역 각각이 상호 동일한 수량의 객체를 포함하는 경우, 상기 선택된 콘텐츠를 3D 속성의 VR 콘텐츠로 판단할 수 있다.
다양한 실시 예에 따르면, 상기 프로세서는 상기 선택된 콘텐츠의 속성이 판단되는 시점(time) 또는 상기 판단되는 시점으로부터 지정된 시간 이내에 상기 콘텐츠의 속성과 관계된 어플리케이션의 실행을 제어할 수 있는 표시 객체를 출력할 수 있다.
도 11은 일 실시 예에 따른 전자 장치의 콘텐츠 출력 방법을 도시한 도면이다.
도 11을 참조하면, 동작 1101에서, 전자 장치(예: 스마트 폰)(도 2의 100) 또는 상기 전자 장치와 상호작용하는 외부 장치(예: HMD 장치(도 1의 1) 또는 스마트 안경(도 1의 2) 등) 상에서 사용자 입력에 대응하여 적어도 하나의 콘텐츠가 선택 또는 활성화될 수 있다. 상기 콘텐츠는 영상 또는 이미지 중 적어도 하나를 포함할 수 있다.
동작 1103에서, 전자 장치의 프로세서(도 2의 150)는 상기 활성화된 콘텐츠에 대한 데이터를 분석할 수 있다. 예를 들어, 프로세서는 상기 활성화된 콘텐츠에 대한 태그(tag) 정보, URL 정보 또는 상기 활성화된 콘텐츠의 저장 파일명 정보를 분석할 수 있다. 일 실시 예에서, 상기 태그 정보 또는 URL 정보에 대한 분석은 상기 활성화된 콘텐츠를 외부 장치(또는, 외부 서버)로부터 스트리밍 받을 경우 수행될 수 있다. 상기 저장 파일명 정보 분석은 상기 활성화된 콘텐츠가 상기 전자 장치의 메모리(도 2의 110)에 저장되어 있는 경우 수행될 수 있다. 다양한 실시 예에서, 프로세서는 분석된 콘텐츠에 대한 데이터를 상기 메모리에 저장할 수 있다.
동작 1103에서, 상기 콘텐츠에 대한 데이터 분석을 기반으로 상기 활성화된 콘텐츠의 속성(예: 2D, 3D SBS(side by side), 3D TB(top and bottom) 또는 360도 등)이 판단되는 경우, 프로세서는 메모리에 저장된 적어도 하나의 콘텐츠 플레이어 중 상기 활성화된 콘텐츠의 속성에 부합하는 플레이어를 식별할 수 있다. 프로세서는 식별된 콘텐츠 플레이어를 포함하는 어플리케이션 프로그램(또는, 출력모드(콘텐츠의 속성에 부합하는 플레이어를 실행시키는 모드))의 실행을 제어하여, 상기 어플리케이션 프로그램(또는, 출력모드)를 기반으로 상기 활성화된 콘텐츠의 출력을 처리할 수 있다.
동작 1103에서, 상기 활성화된 콘텐츠에 대한 데이터가 부재하거나, 상기 데이터를 기반으로 상기 활성화된 콘텐츠의 속성이 판단되지 않는 경우, 동작 1105에서, 프로세서는 상기 활성화된 콘텐츠에 대한 메인 프레임을 추출할 수 있다. 예를 들어, 프로세서는 상기 활성화된 콘텐츠를 구성하는 적어도 하나의 프레임 중 지정된 크기 이상의 객체(또는, 오브젝트)를 상대적으로 많이 포함하는 프레임을 상기 메인 프레임으로 지정할 수 있다. 또는 다양한 실시 예에서, 프로세서는 상기 콘텐츠를 구성하는 적어도 하나의 프레임 중 첫 번째(first) 프레임을 상기 메인 프레임으로 지정할 수 있다. 또는 다양한 실시 예에서, 프로세서는 상기 콘텐츠를 구성하는 적어도 하나의 프레임을 지정된 범위로 그룹핑하고, 특정 그룹을 선택하여 상기 특정 그룹에 포함된 적어도 하나의 프레임을 메인 프레임으로 지정할 수 있다. 상기 그룹핑에 대한 범위는 전자 장치의 콘텐츠 처리 성능에 기반하여 설정되거나 또는, 사용자 제어에 의하여 설정될 수 있다.
동작 1107에서, 프로세서는 상기 메인 프레임에 대하여 지정된 적어도 하나의 조건에 대한 만족 여부를 판단할 수 있다. 이에 대한 제1 실시 예에서, 프로세서는 상기 메인 프레임을 3차원의 구 오브젝트에 매핑시킬 수 있다. 이 동작에서, 프로세서는 상기 구 오브젝트 상의 상부 극 영역에 대응하는 메인 프레임 내의 제1 영역에 포함된 복수의 픽셀들 간의 컬러 값을 비교할 수 있다. 대응적으로, 프로세서는 상기 구 오브젝트 상의 하부 극 영역에 대응하는 메인 프레임 내의 제2 영역에 포함된 복수의 픽셀들 간의 컬러 값을 비교할 수 있다. 또한, 프로세서는 상기 구 오브젝트의 임의의 구면 영역에서 상접하는 메인 프레임 내의 제3 영역 및 제4 영역 각각에 포함된 동일 Y좌표(또는, 동일한 높이) 픽셀들 간의 컬러 값을 비교할 수 있다. 프로세서는 상기 제1 영역에 포함된 복수의 픽셀들 간의 컬러 값 및 상기 제2 영역에 포함된 복수의 픽셀들 간의 컬러 값이 지정된 비율 이상으로 일치하고, 상기 제3 영역 및 제4 영역 간에 동일한 Y좌표(또는, 동일한 높이)로 대응되는 픽셀들의 컬러 값이 지정된 비율 이상으로 일치하는 경우, 상기 메인 프레임이 상기 제1 실시 예에 따른 콘텐츠 속성 판단 조건을 만족하는 것으로 판단할 수 있다.
제2 실시 예에서, 프로세서는 상기 메인 프레임에 대한 횡 방향 및 종 방향 길이 비율을 비교할 수 있다. 일 실시 예에서, 상기 횡 방향 및 종 방향에 대한 길이 비율이 지정된 비율(예: 2:1)과 동일하거나 또는, 지정된 비율 범위 이내에 포함되는 경우, 프로세서는 상기 메인 프레임이 상기 제2 실시 예에 따른 콘텐츠 속성 판단 조건을 만족하는 것으로 판단할 수 있다.
제3 실시 예에서, 프로세서는 예컨대, 상기 메인 프레임에 대하여 이미지 프로세싱(예: 윤곽선 검출 필터 또는 액티브 컨투어 모델 등)을 수행하여 상기 메인 프레임에 포함된 지정된 크기 이상의 적어도 하나의 곡선을 추출할 수 있다. 이 동작에서, 프로세서는 추출된 적어도 하나의 곡선에 대한 곡률과 상기 메인 프레임이 매핑되는 구 오브젝트의 곡률을 비교할 수 있다. 일 실시 예에서, 상기 메인 프레임 내에 상기 구 오브젝트의 곡률보다 작은 곡률을 갖는 적어도 하나의 곡선이 지정된 수량 이상으로 존재하는 경우, 프로세서는 상기 메인 프레임이 상기 제3 실시 예에 따른 콘텐츠 속성 판단 조건을 만족하는 것으로 판단할 수 있다.
제4 실시 예에서, 프로세서는 상기 메인 프레임에 대하여 이미지 프로세싱(예: 윤곽선 검출 필터 또는 액티브 컨투어 모델 등)을 수행함으로써, 상기 메인 프레임 상에서 지정된 크기 이상의 적어도 하나의 곡선을 추출할 수 있다. 프로세서는 상기 메인 프레임 상에 상기 메인 프레임을 횡 방향으로 이등분하는 가상의 경계선을 부가할 수 있다. 프로세서는 상기 추출된 적어도 하나의 곡선과 상기 횡 방향의 경계선 간의 상대적 위치를 판단하고, 상기 적어도 하나의 곡선 각각에 대한 굴절 방향을 분석할 수 있다. 일 실시 예에서, 상기 횡 방향 경계선을 기준하여 상부 영역에는 상측 방향을 향하여 굴절된 곡선이 다수이고, 하부 영역에는 하측 방향을 향하여 굴절된 곡선이 다수인 경우, 프로세서는 상기 메인 프레임이 상기 제4 실시 예에 따른 콘텐츠 속성 판단 조건을 만족하는 것으로 판단할 수 있다.
제5 실시 예에서, 프로세서는 상기 메인 프레임에 대한 이미지 프로세싱(예: 윤곽선 검출 필터 또는 액티브 컨투어 모델 등)을 수행하여 지정된 크기 이상의 종 방향 직선 및 횡 방향 직선을 추출할 수 있다. 프로세서는 상기 종 방향 직선 및 횡 방향 직선 간의 수량을 비교할 수 있다. 일 실시 예에서, 상기 종 방향 직선의 수량이 상기 횡 방향 직선의 수량에 상대적으로 다수인 경우, 프로세서는 상기 메인 프레임이 상기 제5 실시 예에 따른 콘텐츠 속성 판단 조건을 만족하는 것으로 판단할 수 있다.
일 실시 예에서, 프로세서는 상술한 제1 내지 제5 실시 예에 따른 콘텐츠 속성 판단 조건들을 제1 그룹으로 지정하고, 상기 조건들에 대하여 상호 상이한 비중을 부여할 수 있다. 예를 들어, 프로세서는 상기 조건들 중 판단 근거의 정확도 또는 판단 결과의 신뢰성이 상대적으로 높은 조건에 높은 레벨의 가중 값을 부여하고, 이외의 조건들에 대하여 순차적인 레벨의 가중 값을 부여할 수 있다. 일 실시 예에서, 프로세서는 상기 제1 그룹에 포함된 조건들에 대한 만족 여부 판단을 상기 가중 값이 높게 할당된 조건들의 순차로 수행할 수 있다.
제6 실시 예에서, 프로세서는 상기 메인 프레임에 대한 이미지 프로세싱(예: 윤곽선 검출 필터 또는 액티브 컨투어 모델 등)을 수행하여 횡 방향 직선 또는 종 방향 직선 중 적어도 하나를 추출할 수 있다. 프로세서는 상기 메인 프레임의 중심부에 지정된 크기의 영역을 지정하고, 상기 지정된 영역 내에 상기 추출된 횡 방향 직선 또는 종 방향 직선의 포함 여부를 판단할 수 있다. 일 실시 예에서, 추출된 횡 방향 직선 또는 종 방향 직선의 적어도 일부가 상기 지정된 영역 내에 포함되는 경우, 프로세서는 상기 메인 프레임이 상기 제6 실시 예에 따른 콘텐츠 속성 판단 조건을 만족하는 것으로 판단할 수 있다.
제7 실시 예에서, 프로세서는 상기 메인 프레임에 대한 이미지 프로세싱(예: 윤곽선 검출 필터 또는 액티브 컨투어 모델 등)을 기반으로 지정된 크기 이상의 적어도 하나의 객체(또는, 오브젝트)를 검출할 수 있다. 이 동작에서, 상기 적어도 하나의 객체가 복수로 검출되면, 프로세서는 복수의 객체들을 비교하여 상호 지정된 비율 이상으로 일치하는 적어도 하나의 객체 쌍을 검출할 수 있다. 프로세서는 상기 객체 쌍을 구성하는 각각의 객체에 대한 상기 메인 프레임 상의 좌표를 산출할 수 있다. 일 실시 예에서, 상기 객체 쌍을 구성하는 객체들이 X축 좌표에 관계없이 동일한 Y축 좌표를 포함하는 경우, 프로세서는 상기 메인 프레임이 제7 실시 예에 따른 콘텐츠 속성 판단 조건을 만족하는 것으로 판단할 수 있다.
제8 실시 예에서, 프로세서는 상기 메인 프레임을 상호 동일한 면적의 제1 영역 및 제2 영역으로 분할할 수 있다. 프로세서는 상기 메인 프레임에 대한 이미지 프로세싱(예: 윤곽선 검출 필터 또는 액티브 컨투어 모델 등)을 기반으로 상기 제1 영역 및 제2 영역 각각에 포함된 객체(또는, 오브젝트)를 검출할 수 있다. 일 실시 예에서, 상기 제1 영역에서 검출되는 객체에 대한 수량과 상기 제2 영역에서 검출되는 객체의 수량이 동일한 경우, 프로세서는 상기 메인 프레임이 상기 제8 실시 예에 따른 콘텐츠 속성 판단 조건을 만족하는 것으로 판단할 수 있다.
일 실시 예에서, 프로세서는 상술한 제6 내지 제8 실시 예에 따른 콘텐츠 속성 판단 조건들을 제2 그룹으로 지정하고, 상술한 제1 그룹 내의 조건들에 대한 비중 부여와 동일 또는 유사한 방식으로 상기 제2 그룹 내의 조건들에 비중을 부여할 수 있다. 일 실시 예에서, 프로세서는 상기 상기 제2 그룹에 포함된 조건들에 대한 만족 여부 판단을 상기 비중에 따른 가중 값이 높게 할당된 조건들의 순차로 수행할 수 있다.
동작 1109에서, 프로세서는 상술된 제1 내지 제8 실시 예에 따른 콘텐츠 속성 판단 조건들의 만족 여부에 근거하여 상기 사용자 입력에 대응하여 선택 또는 활성화된 콘텐츠에 대한 속성을 판단할 수 있다.
일 실시 예에서, 프로세서는 상기 제1 그룹에 대하여 가중 값에 기초한 조건들의 순차로 만족 여부를 판단하고, 만족된 조건들의 가중 값을 합산할 수 있다. 일 실시 예에서, 상기 가중 값의 합산이 지정된 임계 값 이상이 되는 경우, 프로세서는 상기 선택 또는 활성화된 콘텐츠를 360도 속성의 VR 콘텐츠로 판단할 수 있다. 이 경우, 프로세서는 만족 여부 판단을 수행하지 않은 상기 제1 그룹 내의 적어도 하나의 조건들에 대한 만족 여부 판단을 배제할 수 있다.
일 실시 예에서, 프로세서는 상기 제2 그룹에 포함된 조건들에 대하여 가중 값에 기초한 순차로 만족 여부를 판단하고, 만족된 조건들의 가중 값을 합산할 수 있다. 프로세서는 상기 가중 값의 합산이 지정된 임계 값 이상이 되면, 사용자 입력에 따라 선택 또는 활성화된 콘텐츠를 3D 속성의 VR 콘텐츠로 판단할 수 있다.
다양한 실시 예에 따르면, 사용자 제어 또는 VR 시스템 운용 정보에 따른 설정에 대응하여, 상술된 제1 그룹 또는 제2 그룹 중 어느 하나의 그룹에 포함된 조건들에 대한 만족 여부 판단이 우선적으로 수행될 수 있다. 이에 따르면, 상기 제1 그룹 또는 제2 그룹에 의하여 콘텐츠의 속성이 판단되는 경우, 다른 어느 하나의 그룹에 포함된 조건들에 대한 만족 여부 판단은 배제될 수 있다.
다양한 실시 예에 따르면, 프로세서는 상기 제1 그룹 및 제2 그룹의 구성을 배제하고, 상기 선택 또는 활성화된 콘텐츠에 대하여 상술한 제1 내지 제8 실시 예에 따른 콘텐츠 속성 판단을 수행할 수 있다. 프로세서는 상기 제1 내지 제8 실시 예에 따른 조건들 각각에 상이한 가중 값을 부여하여 상기 가중 값에 기초한 순차로 만족 여부를 판단하거나, 또는 임의의 순차로 만족 여부를 판단할 수 있다. 일 실시 예에서, 프로세서는 만족된 적어도 하나의 조건에 대한 가중 값 합산이 지정된 임계 값 이상이 되는 경우, 상기 선택 또는 활성화된 콘텐츠를 VR 콘텐츠로 판단할 수 있다.
동작 1111에서, 프로세서는 메모리에 저장된 적어도 하나의 콘텐츠 플레이어 중 상기 선택 또는 활성화된 콘텐츠의 속성에 부합하는 콘텐츠 플레이어를 식별할 수 있다. 프로세서는, 식별된 콘텐츠 플레이어를 포함하는 어플리케이션 프로그램의 실행을 제어하거나, 또는 상기 식별된 콘텐츠 플레이어를 실행시키는 출력모드의 활성화를 제어하여, 상기 선택 또는 활성화된 콘텐츠의 출력을 처리할 수 있다.
다양한 실시 예에 따르면, 프로세서는 출력된(또는, 재생되는) 콘텐츠의 적어도 일부에 대하여 상술한 조건들에 따른 콘텐츠 속성 판단을 반복적으로 수행할 수 있다. 이와 관련하여, 다양한 실시 예에서 출력된(또는, 재생되는) 콘텐츠는 복수의 속성을 포함할 수 있다. 예를 들어, 상기 콘텐츠의 일부는 제1 속성(예: 360도)을 포함하고, 다른 일부는 제2 속성(예: 3D)을 포함할 수 있다. 이 경우, 프로세서는 초기 판단되는 콘텐츠의 속성에 부합되는 어플리케이션 프로그램 또는 출력모드의 실행을 기반으로 상기 콘텐츠의 출력을 처리하고, 콘텐츠 출력 과정에서 지속적 또는 지정된 주기로 콘텐츠 속성 판단을 반복 수행하여 변환되는 콘텐츠 속성에 대응하는 어플리케이션 프로그램 또는 출력모드의 실행을 제어할 수 있다.
전술한 다양한 실시 예에 따른 전자 장치의 콘텐츠 출력 방법은, 적어도 하나의 콘텐츠를 선택하는 입력을 수신하는 동작, 지정된 적어도 하나의 조건 만족 여부를 기반으로 선택된 콘텐츠의 속성을 판단하는 동작, 상기 속성이 VR(virtual reality) 콘텐츠에 관계되는 것으로 판단되면 상기 VR 콘텐츠의 출력과 관계된 어플리케이션의 실행을 제어하는 동작 및 상기 어플리케이션의 실행을 기반으로 상기 선택된 콘텐츠의 출력을 처리하는 동작을 포함할 수 있다.
다양한 실시 예에 따르면, 상기 선택된 콘텐츠의 속성을 판단하는 동작은, 상기 선택된 콘텐츠 상의 제1 영역에 포함된 복수의 픽셀들 간의 컬러 값, 제2 영역에 포함된 복수의 픽셀들 간의 컬러 값, 및 제3 영역 및 제4 영역 간에 동일한 Y좌표로 대응하는 픽셀들 간의 컬러 값이 지정된 비율 이상으로 일치하면 상기 선택된 콘텐츠를 360도 속성의 VR 콘텐츠로 판단하는 동작을 포함할 수 있다.
다양한 실시 예에 따르면, 상기 선택된 콘텐츠의 속성을 판단하는 동작은, 상기 선택된 콘텐츠에 대한 횡 방향 길이 및 종 방향 길이 비율을 판단하는 동작, 및 상기 횡 방향 길이 및 종 방향 길이 간의 비율이 지정된 길이 비율에 포함되면 상기 선택된 콘텐츠를 360도 속성의 VR 콘텐츠로 판단하는 동작을 포함할 수 있다.
다양한 실시 예에 따르면, 상기 선택된 콘텐츠의 속성을 판단하는 동작은, 상기 선택된 콘텐츠에 포함된 지정된 크기 이상의 곡선에 대한 곡률 정보와 상기 선택된 콘텐츠가 매핑되는 3차원 구 오브젝트에 대한 곡률 정보를 비교하는 동작 및 상기 선택된 콘텐츠가 상기 구 오브젝트에 대한 곡률보다 작은 곡률의 곡선을 지정된 수량 이상으로 포함하면 상기 선택된 콘텐츠를 360도 속성의 VR 콘텐츠로 판단하는 동작을 포함할 수 있다.
다양한 실시 예에 따르면, 상기 선택된 콘텐츠의 속성을 판단하는 동작은, 상기 선택된 콘텐츠에 상기 선택된 콘텐츠를 횡 방향으로 분할하는 가상의 경계선을 부가하는 동작, 상기 경계선을 기준하여 상부 영역 및 하부 영역에 포함된 곡선의 굴절 방향을 판단하는 동작, 및 상기 상부 영역에서 상측 방향을 향하여 굴절된 적어도 하나의 곡선이 하측 방향을 향하여 굴정된 적어도 하나의 곡선보다 많이 존재하거나, 상기 하부 영역에서 하측 방향을 향하여 굴절된 적어도 하나의 곡선이 상측 방향을 향하여 굴절된 적어도 하나의 곡선보다 많이 존재하면 상기 선택된 콘텐츠를 360도 속성의 VR 콘텐츠로 판단하는 동작을 포함할 수 있다.
다양한 실시 예에 따르면, 상기 선택된 콘텐츠의 속성을 판단하는 동작은, 상기 선택된 콘텐츠에 포함된 지정된 크기 이상의 종 방향 직선에 대한 수량 및 횡 방향 직선에 대한 수량을 비교하는 동작 및 상기 종 방향 직선에 대한 수량이 상기 횡 방향 직선에 대한 수량에 상대적으로 많으면 상기 선택된 콘텐츠를 360도 속성의 VR 콘텐츠로 판단하는 동작을 포함할 수 있다.
다양한 실시 예에 따르면, 상기 선택된 콘텐츠의 속성을 판단하는 동작은, 상기 선택된 콘텐츠의 중심부에 지정된 크기의 영역을 지정하는 동작, 상기 선택된 콘텐츠에서 지정된 크기 또는 길이 이상의 횡 방향 직선 또는 종 방향 직선 중 적어도 하나를 추출하는 동작, 및 상기 지정된 크기의 영역에 상기 횡 방향 직선 또는 종 방향 직선 중 어느 하나가 포함되면 상기 선택된 콘텐츠를 3D 속성의 VR 콘텐츠로 판단하는 동작을 포함할 수 있다.
다양한 실시 예에 따르면, 상기 선택된 콘텐츠의 속성을 판단하는 동작은, 상기 선택된 콘텐츠 내에서 지정된 비율 이상으로 일치하는 적어도 하나의 객체 쌍을 검출하는 동작 및 상기 적어도 하나의 객체 쌍을 구성하는 객체들 상호 간이 상기 선택된 콘텐츠 상에서 동일한 Y축 좌표를 포함하면 상기 선택된 콘텐츠를 3D 속성의 VR 콘텐츠로 판단하는 동작을 포함할 수 있다.
다양한 실시 예에 따르면, 상기 선택된 콘텐츠의 속성을 판단하는 동작은, 상기 선택된 콘텐츠를 상호 동일한 면적의 제1 영역 및 제2 영역으로 분할하는 동작, 상기 제1 영역 및 상기 제2 영역 각각에 포함된 객체의 수량을 산출하는 동작, 및 상기 제1 영역 및 상기 제2 영역 상호 간이 동일한 수량의 객체를 포함하면 상기 선택된 콘텐츠를 3D 속성의 VR 콘텐츠로 판단하는 동작을 포함할 수 있다.
도 12는 일 실시 예에 따른 전자 장치의 블록도를 도시한 도면이다.
도 12를 참조하면, 전자 장치(1201)는 예컨대, 도 2에 도시된 전자 장치(100)의 전체 또는 일부를 포함할 수 있다. 전자 장치(1201)는 하나 이상의 프로세서(예: AP)(1210), 통신 모듈(1220), 가입자 식별 모듈(1224), 메모리(1230), 센서 모듈(1240), 입력 장치(1250), 디스플레이(1260), 인터페이스(1270), 오디오 모듈(1280), 카메라 모듈(1291), 전력 관리 모듈(1295), 배터리(1296), 인디케이터(1297) 및 모터(1298)를 포함할 수 있다.
프로세서(1210)는, 예를 들면, 운영 체제 또는 응용 프로그램을 구동하여 프로세서(1210)에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어할 수 있고, 각종 데이터 처리 및 연산을 수행할 수 있다. 프로세서(1210)는, 예를 들면, SoC(system on chip)로 구현될 수 있다. 일 실시 예에 따르면, 프로세서(810)는 GPU(graphic processing unit) 및/또는 이미지 신호 프로세서(image signal processor)를 더 포함할 수 있다. 프로세서(1210)는 도 12에 도시된 구성요소들 중 적어도 일부(예: 셀룰러 모듈(1221))를 포함할 수도 있다. 프로세서(1210)는 다른 구성요소들(예: 비휘발성 메모리) 중 적어도 하나로부터 수신된 명령 또는 데이터를 휘발성 메모리에 로드(load)하여 처리하고, 다양한 데이터를 비휘발성 메모리에 저장(store)할 수 있다.
통신 모듈(1220)은, 도 2의 통신 인터페이스(130)와 동일 또는 유사한 구성을 가질 수 있다. 통신 모듈(1220)은, 예를 들면, 셀룰러 모듈(1221), Wi-Fi 모듈(1223), 블루투스(BT) 모듈(1225), GNSS 모듈(1227)(예: GPS 모듈, Glonass 모듈, Beidou 모듈, 또는 Galileo 모듈), NFC 모듈(1228), 및 RF(radio frequency) 모듈(1229)을 포함할 수 있다.
셀룰러 모듈(1221)은, 예를 들면, 통신망을 통해서 음성 통화, 영상 통화, 문자 서비스, 또는 인터넷 서비스 등을 제공할 수 있다. 일 실시 예에 따르면, 셀룰러 모듈(1221)은 가입자 식별 모듈(예: SIM 카드)(1224)을 이용하여 통신 네트워크 내에서 전자 장치(1201)의 구별 및 인증을 수행할 수 있다. 일 실시 예에 따르면, 셀룰러 모듈(1221)은 프로세서(1210)가 제공할 수 있는 기능 중 적어도 일부 기능을 수행할 수 있다. 일 실시 예에 따르면, 셀룰러 모듈(1221)은 커뮤니케이션 프로세서(CP)를 포함할 수 있다.
Wi-Fi 모듈(1223), 블루투스 모듈(1225), GNSS 모듈(1227), 또는 NFC 모듈(1228) 각각은, 예를 들면, 해당하는 모듈을 통해서 송수신되는 데이터를 처리하기 위한 프로세서를 포함할 수 있다. 어떤 실시 예에 따르면, 셀룰러 모듈(1221), Wi-Fi 모듈(1223), 블루투스 모듈(1225), GNSS 모듈(1227), 또는 NFC 모듈(1228) 중 적어도 일부(예: 두 개 이상)는 하나의 IC(integrated chip) 또는 IC 패키지 내에 포함될 수 있다.
RF 모듈(1229)은, 예를 들면, 통신 신호(예: RF 신호)를 송수신할 수 있다. RF 모듈(1229)은, 예를 들면, 트랜시버(transceiver), PAM(power amp module), 주파수 필터(frequency filter), LNA(low noise amplifier), 또는 안테나 등을 포함할 수 있다. 다른 실시 예에 따르면, 셀룰러 모듈(1221), Wi-Fi 모듈(1223), 블루투스 모듈(1225), GNSS 모듈(1227), 또는 NFC 모듈(1228) 중 적어도 하나는 별개의 RF 모듈을 통하여 RF 신호를 송수신할 수 있다.
가입자 식별 모듈(1224)은, 예를 들면, 가입자 식별 모듈을 포함하는 카드 및/또는 내장 SIM(embedded SIM)을 포함할 수 있으며, 고유한 식별 정보(예: ICCID (integrated circuit card identifier)) 또는 가입자 정보(예: IMSI (international mobile subscriber identity))를 포함할 수 있다.
메모리(1230)(예: 메모리(도 2의 110))는, 예를 들면, 내장 메모리(1232) 또는 외장 메모리(1234)를 포함할 수 있다. 내장 메모리(1232)는, 예를 들면, 휘발성 메모리(예: DRAM(dynamic RAM), SRAM(static RAM), 또는 SDRAM(synchronous dynamic RAM) 등), 비-휘발성(non-volatile) 메모리 (예: OTPROM(one time programmable ROM), PROM(programmable ROM), EPROM(erasable and programmable ROM), EEPROM(electrically erasable and programmable ROM), 마스크(mask) ROM, 플래시(flash) ROM, 플래시 메모리(예: 낸드플래시(NAND flash) 또는 노아플래시(NOR flash) 등), 하드 드라이브, 또는 SSD(solid state drive) 중 적어도 하나를 포함할 수 있다.
외장 메모리(1234)는 플래시 드라이브(flash drive), 예를 들면, CF(compact flash), SD(secure digital), Micro-SD, Mini-SD, xD(extreme digital), MMC(MultiMediaCard), 또는 메모리 스틱(memory stick) 등을 더 포함할 수 있다. 외장 메모리(1234)는 다양한 인터페이스를 통하여 전자 장치(1201)와 기능적으로 및/또는 물리적으로 연결될 수 있다.
센서 모듈(1240)은, 예를 들면, 물리량을 계측하거나 전자 장치(1201)의 작동 상태를 감지하여, 계측 또는 감지된 정보를 전기 신호로 변환할 수 있다. 센서 모듈(1240)은, 예를 들면, 제스처 센서(1240A), 자이로 센서(1240B), 기압 센서(1240C), 마그네틱 센서(1240D), 가속도 센서(1240E), 그립 센서(1240F), 근접 센서(1240G), 컬러 센서(1240H)(예: RGB 센서), 생체 센서(1240I), 온/습도 센서(1240J), 조도 센서(1240K), 또는 UV(ultra violet) 센서(1240M) 중의 적어도 하나를 포함할 수 있다. 추가적으로 또는 대체적으로, 센서 모듈(1240)은, 예를 들면, 후각 센서(E-nose sensor), EMG(electromyography) 센서, EEG(electroencephalogram) 센서, ECG(electrocardiogram) 센서, IR(infrared) 센서, 홍채 센서 및/또는 지문 센서를 포함할 수 있다. 센서 모듈(1240)은 그 안에 속한 적어도 하나 이상의 센서들을 제어하기 위한 제어 회로를 더 포함할 수 있다. 어떤 실시 예에서는, 전자 장치(1201)는 프로세서(1210)의 일부로서 또는 별도로, 센서 모듈(1240)을 제어하도록 구성된 프로세서를 더 포함하여, 프로세서(1210)가 슬립(sleep) 상태에 있는 동안, 센서 모듈(1240)을 제어할 수 있다.
입력 장치(1250)는, 예를 들면, 터치 패널(touch panel)(1252), (디지털) 펜 센서(pen sensor)(1254), 키(key)(1256), 또는 초음파(ultrasonic) 입력 장치(1258)를 포함할 수 있다. 터치 패널(1252)은, 예를 들면, 정전식, 감압식, 적외선 방식, 또는 초음파 방식 중 적어도 하나의 방식을 사용할 수 있다. 또한, 터치 패널(1252)은 제어 회로를 더 포함할 수도 있다. 터치 패널(1252)은 택타일 레이어(tactile layer)를 더 포함하여, 사용자에게 촉각 반응을 제공할 수 있다.
(디지털) 펜 센서(1254)는, 예를 들면, 터치 패널의 일부이거나, 별도의 인식용 시트(sheet)를 포함할 수 있다. 키(1256)는, 예를 들면, 물리적인 버튼, 광학식 키, 또는 키패드를 포함할 수 있다. 초음파 입력 장치(1258)는 마이크(예: 마이크(1288))를 통해, 입력 도구에서 발생된 초음파를 감지하여, 상기 감지된 초음파에 대응하는 데이터를 확인할 수 있다.
디스플레이(1260)(예: 디스플레이(도 2의 120))는 패널(1262), 홀로그램 장치(1264), 또는 프로젝터(1266)를 포함할 수 있다. 패널(1262)은, 도 2의 디스플레이(120)와 동일 또는 유사한 구성을 포함할 수 있다. 패널(1262)은, 예를 들면, 유연하게(flexible), 투명하게(transparent), 또는 착용할 수 있게(wearable) 구현될 수 있다. 패널(1262)은 터치 패널(1252)과 하나의 모듈로 구성될 수도 있다. 홀로그램 장치(1264)는 빛의 간섭을 이용하여 입체 영상을 허공에 보여줄 수 있다. 프로젝터(1266)는 스크린에 빛을 투사하여 영상을 표시할 수 있다. 스크린은, 예를 들면, 전자 장치(1201)의 내부 또는 외부에 위치할 수 있다. 일 실시 예에 따르면, 디스플레이(1260)는 상기 패널(1262), 상기 홀로그램 장치(1264), 또는 프로젝터(1266)를 제어하기 위한 제어 회로를 더 포함할 수 있다.
인터페이스(1270)는, 예를 들면, HDMI(1272), USB(1274), 광 인터페이스(optical interface)(1276), 또는 D-sub(D-subminiature)(1278)를 포함할 수 있다. 인터페이스(1270)는, 예를 들면, 도 2에 도시된 입출력 인터페이스(160)에 포함될 수 있다. 추가적으로 또는 대체적으로, 인터페이스(1270)는, 예를 들면, MHL(mobile high-definition link) 인터페이스, SD 카드/MMC 인터페이스, 또는 IrDA(infrared data association) 규격 인터페이스를 포함할 수 있다.
오디오 모듈(1280)은, 예를 들면, 소리(sound)와 전기 신호를 쌍방향으로 변환시킬 수 있다. 오디오 모듈(1280)은, 예를 들면, 스피커(1282), 리시버(1284), 이어폰(1286), 또는 마이크(1288) 등을 통해 입력 또는 출력되는 소리 정보를 처리할 수 있다.
카메라 모듈(1291)은, 예를 들면, 정지 영상 및 동영상을 촬영할 수 있는 장치로서, 일 실시 예에 따르면, 하나 이상의 이미지 센서(예: 전면 센서 또는 후면 센서), 렌즈, ISP(image signal processor), 또는 플래시(flash)(예: LED 또는 제논 램프(xenon lamp))를 포함할 수 있다.
전력 관리 모듈(1295)은, 예를 들면, 전자 장치(1201)의 전력을 관리할 수 있다. 일 실시 예에 따르면, 전력 관리 모듈(1295)은 PMIC(power management integrated circuit), 충전 IC(charger integrated circuit), 또는 배터리 또는 연료 게이지(battery or fuel gauge)를 포함할 수 있다. PMIC는, 유선 및/또는 무선 충전 방식을 가질 수 있다. 무선 충전 방식은, 예를 들면, 자기공명 방식, 자기유도 방식 또는 전자기파 방식 등을 포함하며, 무선 충전을 위한 부가적인 회로, 예를 들면, 코일 루프, 공진 회로, 또는 정류기 등을 더 포함할 수 있다. 배터리 게이지는, 예를 들면, 배터리(1296)의 잔량, 충전 중 전압, 전류, 또는 온도를 측정할 수 있다. 배터리(1296)는, 예를 들면, 충전식 전지(rechargeable battery) 및/또는 태양 전지(solar battery)를 포함할 수 있다.
인디케이터(1297)는 전자 장치(1201) 혹은 그 일부(예: 프로세서(1210))의 특정 상태, 예를 들면, 부팅 상태, 메시지 상태 또는 충전 상태 등을 표시할 수 있다. 모터(1298)는 전기적 신호를 기계적 진동으로 변환할 수 있고, 진동(vibration), 또는 햅틱(haptic) 효과 등을 발생시킬 수 있다. 도시되지는 않았으나, 전자 장치(1201)는 모바일 TV 지원을 위한 처리 장치(예: GPU)를 포함할 수 있다. 모바일 TV 지원을 위한 처리 장치는, 예를 들면, DMB(Digital Multimedia Broadcasting), DVB(Digital Video Broadcasting), 또는 미디어플로(MediaFLOTM) 등의 규격에 따른 미디어 데이터를 처리할 수 있다.
본 문서에서 기술된 구성요소들 각각은 하나 또는 그 이상의 부품(component)으로 구성될 수 있으며, 해당 구성 요소의 명칭은 전자 장치의 종류에 따라서 달라질 수 있다. 다양한 실시 예에서, 전자 장치는 본 문서에서 기술된 구성요소 중 적어도 하나를 포함하여 구성될 수 있으며, 일부 구성요소가 생략되거나 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 또한, 다양한 실시 예에 따른 전자 장치의 구성 요소들 중 일부가 결합되어 하나의 개체(entity)로 구성됨으로써, 결합되기 이전의 해당 구성 요소들의 기능을 동일하게 수행할 수 있다.
도 13은 일 실시 예에 따른 프로그램 모듈의 블록도를 도시한 도면이다.
일 실시 예에 따르면, 프로그램 모듈(1310)은 전자 장치(예: 전자 장치(도 2의 100))에 관련된 자원을 제어하는 운영 체제(OS) 및/또는 운영 체제 상에서 구동되는 다양한 어플리케이션(예: 어플리케이션 프로그램(도 2의 111))을 포함할 수 있다. 운영 체제는, 예를 들면, 안드로이드(android), iOS, 윈도우즈(windows), 심비안(symbian), 타이젠(tizen), 또는 바다(bada) 등이 될 수 있다.
프로그램 모듈(1310)은 커널(1320), 미들웨어(1330), API(1360), 및/또는 어플리케이션(1370)을 포함할 수 있다. 프로그램 모듈(1310)의 적어도 일부는 전자 장치 상에 프리로드(preload) 되거나, 외부 전자 장치(예: 외부 장치(도 2의 5), 서버(도 2의 6) 등)로부터 다운로드 될 수 있다.
커널(1320)(예: 커널(도 2의 113))은, 예를 들면, 시스템 리소스 매니저(1321) 또는 디바이스 드라이버(1323)를 포함할 수 있다. 시스템 리소스 매니저(1321)는 시스템 리소스의 제어, 할당, 또는 회수 등을 수행할 수 있다. 일 실시 예에 따르면, 시스템 리소스 매니저(1321)는 프로세스 관리부, 메모리 관리부, 또는 파일 시스템 관리부 등을 포함할 수 있다. 디바이스 드라이버(1323)는, 예를 들면, 디스플레이 드라이버, 카메라 드라이버, 블루투스 드라이버, 공유 메모리 드라이버, USB 드라이버, 키패드 드라이버, Wi-Fi 드라이버, 오디오 드라이버, 또는 IPC(inter-process communication) 드라이버를 포함할 수 있다.
미들웨어(1330)는, 예를 들면, 어플리케이션(1370)이 공통적으로 필요로 하는 기능을 제공하거나, 어플리케이션(1370)이 전자 장치 내부의 제한된 시스템 자원을 효율적으로 사용할 수 있도록 API(1360)를 통해 다양한 기능들을 어플리케이션(1370)으로 제공할 수 있다. 일 실시 예에 따르면, 미들웨어(1330)(예: 미들웨어(도 2의 115))는 런타임 라이브러리(1335), 어플리케이션 매니저(application manager)(1341), 윈도우 매니저(window manager)(1342), 멀티미디어 매니저(multimedia manager)(1343), 리소스 매니저(resource manager)(1344), 파워 매니저(power manager)(1345), 데이터베이스 매니저(database manager)(1346), 패키지 매니저(package manager)(1347), 연결 매니저(connectivity manager)(1348), 통지 매니저(notification manager)(1349), 위치 매니저(location manager)(1350), 그래픽 매니저(graphic manager)(1351), 또는 보안 매니저(security manager)(1352) 중 적어도 하나를 포함할 수 있다.
런타임 라이브러리(1335)는, 예를 들면, 어플리케이션(1370)이 실행되는 동안에 프로그래밍 언어를 통해 새로운 기능을 추가하기 위해 컴파일러가 사용하는 라이브러리 모듈을 포함할 수 있다. 런타임 라이브러리(1335)는 입출력 관리, 메모리 관리, 또는 산술 함수에 대한 기능 등을 수행할 수 있다.
어플리케이션 매니저(1341)는, 예를 들면, 어플리케이션(1370) 중 적어도 하나의 어플리케이션의 생명 주기(life cycle)를 관리할 수 있다. 윈도우 매니저(1342)는 화면에서 사용하는 GUI 자원을 관리할 수 있다. 멀티미디어 매니저(1343)는 다양한 미디어 파일들의 재생에 필요한 포맷을 파악하고, 해당 포맷에 맞는 코덱(codec)을 이용하여 미디어 파일의 인코딩(encoding) 또는 디코딩(decoding)을 수행할 수 있다. 리소스 매니저(1344)는 어플리케이션(1370) 중 적어도 어느 하나의 어플리케이션의 소스 코드, 메모리 또는 저장 공간 등의 자원을 관리할 수 있다.
파워 매니저(1345)는, 예를 들면, 바이오스(BIOS: basic input/output system) 등과 함께 동작하여 배터리 또는 전원을 관리하고, 전자 장치의 동작에 필요한 전력 정보 등을 제공할 수 있다. 데이터베이스 매니저(1346)는 어플리케이션(1370) 중 적어도 하나의 어플리케이션에서 사용할 데이터베이스를 생성, 검색, 또는 변경할 수 있다. 패키지 매니저(1347)는 패키지 파일의 형태로 배포되는 어플리케이션의 설치 또는 업데이트를 관리할 수 있다.
연결 매니저(1348)는, 예를 들면, Wi-Fi 또는 블루투스 등의 무선 연결을 관리할 수 있다. 통지 매니저(1349)는 도착 메시지, 약속, 근접성 알림 등의 사건(event)을 사용자에게 방해되지 않는 방식으로 표시 또는 통지할 수 있다. 위치 매니저(1350)는 전자 장치의 위치 정보를 관리할 수 있다. 그래픽 매니저(1351)는 사용자에게 제공될 그래픽 효과 또는 이와 관련된 사용자 인터페이스를 관리할 수 있다. 보안 매니저(1352)는 시스템 보안 또는 사용자 인증 등에 필요한 제반 보안 기능을 제공할 수 있다. 일 실시 예에 따르면, 전자 장치(예: 전자 장치(도 2의 100))가 전화 기능을 포함한 경우, 미들웨어(1330)는 전자 장치의 음성 또는 영상 통화 기능을 관리하기 위한 통화 매니저(telephony manager)를 더 포함할 수 있다.
미들웨어(1330)는 전술한 구성요소들의 다양한 기능의 조합을 형성하는 미들웨어 모듈을 포함할 수 있다. 미들웨어(1330)는 차별화된 기능을 제공하기 위해 운영 체제의 종류 별로 특화된 모듈을 제공할 수 있다. 또한, 미들웨어(1330)는 동적으로 기존의 구성요소를 일부 삭제하거나 새로운 구성요소들을 추가할 수 있다.
API(1360)(예: API(도 2의 117))는, 예를 들면, API 프로그래밍 함수들의 집합으로, 운영 체제에 따라 다른 구성으로 제공될 수 있다. 예를 들면, 안드로이드 또는 iOS의 경우, 플랫폼 별로 하나의 API 셋을 제공할 수 있으며, 타이젠(tizen)의 경우, 플랫폼 별로 두 개 이상의 API 셋을 제공할 수 있다.
어플리케이션(1370)(예: 어플리케이션 프로그램(도 2의 111))은, 예를 들면, 홈(1371), 다이얼러(1372), SMS/MMS(1373), IM(instant message)(1374), 브라우저(1375), 카메라(1376), 알람(1377), 컨택트(1378), 음성 다이얼(1379), 이메일(1380), 달력(1381), 미디어 플레이어(1382), 앨범(1383), 시계(1384), 건강 관리(health care)(예: 운동량 또는 혈당 등을 측정), 또는 환경 정보 제공(예: 기압, 습도, 또는 온도 정보 등을 제공) 등의 기능을 수행할 수 있는 하나 이상의 어플리케이션을 포함할 수 있다.
일 실시 예에 따르면, 어플리케이션(1370)은 전자 장치(예: 전자 장치(도 2의 100))와 외부 전자 장치(예: 외부 장치(도 2의 5)) 사이의 정보 교환을 지원하는 어플리케이션(이하, 설명의 편의상, "정보 교환 어플리케이션")을 포함할 수 있다. 정보 교환 어플리케이션은, 예를 들면, 외부 전자 장치에 특정 정보를 전달하기 위한 알림 전달(notification relay) 어플리케이션, 또는 외부 전자 장치를 관리하기 위한 장치 관리(device management) 어플리케이션을 포함할 수 있다.
예를 들면, 알림 전달 어플리케이션은 전자 장치의 다른 어플리케이션(예: SMS/MMS 어플리케이션, 이메일 어플리케이션, 건강 관리 어플리케이션, 또는 환경 정보 어플리케이션 등)에서 발생된 알림 정보를 외부 전자 장치(예: 외부 장치(도 2의 5))로 전달하는 기능을 포함할 수 있다. 또한, 알림 전달 어플리케이션은, 예를 들면, 외부 전자 장치로부터 알림 정보를 수신하여 사용자에게 제공할 수 있다.
장치 관리 어플리케이션은, 예를 들면, 전자 장치와 통신하는 외부 전자 장치(예: 외부 장치(도 2의 5))의 적어도 하나의 기능(예: 외부 전자 장치 자체(또는 일부 구성 부품)의 턴-온/턴-오프 또는 디스플레이의 밝기(또는 해상도) 조절), 외부 전자 장치에서 동작하는 어플리케이션 또는 외부 전자 장치에서 제공되는 서비스(예: 통화 서비스 또는 메시지 서비스 등)를 관리(예: 설치, 삭제, 또는 업데이트)할 수 있다.
일 실시 예에 따르면, 어플리케이션(1370)은 외부 전자 장치(예: 외부 장치(도 2의 5))의 속성에 따라 지정된 어플리케이션(예: 모바일 의료 기기의 건강 관리 어플리케이션)을 포함할 수 있다. 일 실시 예에 따르면, 어플리케이션(1370)은 외부 전자 장치(예: 외부 장치(도 2의 5) 또는 서버(도 2의 6))로부터 수신된 어플리케이션을 포함할 수 있다. 일 실시 예에 따르면, 어플리케이션(1370)은 프리로드 어플리케이션(preloaded application) 또는 서버로부터 다운로드 가능한 제3자 어플리케이션(third party application)을 포함할 수 있다. 도시된 실시 예에 따른 프로그램 모듈(1310)의 구성요소들의 명칭은 운영 체제의 종류에 따라서 달라질 수 있다.
다양일 실시 예에 따르면, 프로그램 모듈(1310)의 적어도 일부는 소프트웨어, 펌웨어, 하드웨어, 또는 이들 중 적어도 둘 이상의 조합으로 구현될 수 있다. 프로그램 모듈(1310)의 적어도 일부는, 예를 들면, 프로세서(예: 프로세서(도 2의 150))에 의해 구현(implement)(예: 실행)될 수 있다. 프로그램 모듈(1310)의 적어도 일부는 하나 이상의 기능을 수행하기 위한, 예를 들면, 모듈, 프로그램, 루틴, 명령어 세트(sets of instructions) 또는 프로세스 등을 포함할 수 있다.
본 문서에서 사용된 용어 "모듈"은, 예를 들면, 하드웨어, 소프트웨어 또는 펌웨어(firmware) 중 하나 또는 둘 이상의 조합을 포함하는 단위(unit)를 의미할 수 있다. "모듈"은, 예를 들면, 유닛(unit), 로직(logic), 논리 블록(logical block), 부품(component), 또는 회로(circuit) 등의 용어와 바꾸어 사용(interchangeably use)될 수 있다. "모듈"은, 일체로 구성된 부품의 최소 단위 또는 그 일부가 될 수 있다. "모듈"은 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수도 있다. "모듈"은 기계적으로 또는 전자적으로 구현될 수 있다. 예를 들면, "모듈"은, 알려졌거나 앞으로 개발될, 어떤 동작들을 수행하는 ASIC(application-specific integrated circuit) 칩, FPGAs(field-programmable gate arrays) 또는 프로그램 가능 논리 장치(programmable-logic device) 중 적어도 하나를 포함할 수 있다.
다양한 실시 예에 따른 장치(예: 모듈들 또는 그 기능들) 또는 방법(예: 동작들)의 적어도 일부는, 예컨대, 프로그램 모듈의 형태로 컴퓨터로 읽을 수 있는 저장매체(computer-readable storage media)에 저장된 명령어로 구현될 수 있다. 상기 명령어가 프로세서(예: 프로세서(도 2의 150))에 의해 실행될 경우, 상기 하나 이상의 프로세서가 상기 명령어에 해당하는 기능을 수행할 수 있다. 컴퓨터로 읽을 수 있는 저장매체는, 예를 들면, 메모리(도 2의 110)가 될 수 있다.
컴퓨터로 판독 가능한 기록 매체는, 하드디스크, 플로피디스크, 마그네틱 매체(magnetic media)(예: 자기테이프), 광기록 매체(optical media)(예: CD-ROM, DVD(Digital Versatile Disc), 자기-광 매체(magneto-optical media)(예: 플롭티컬 디스크(floptical disk)), 하드웨어 장치(예: ROM, RAM, 또는 플래시 메모리 등) 등을 포함할 수 있다. 또한, 프로그램 명령에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 다양한 실시 예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지다.
다양한 실시 예에 따른 모듈 또는 프로그램 모듈은 전술한 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 다양한 실시 예에 따른 모듈, 프로그램 모듈 또는 다른 구성요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱(heuristic)한 방법으로 실행될 수 있다. 또한, 일부 동작은 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
본 문서에 개시된 실시 예는, 개시된 기술 내용의 설명 및 이해를 위해 제시된 것이며, 본 발명의 범위를 한정하는 것은 아니다. 따라서, 본 문서의 범위는, 본 발명의 기술적 사상에 근거한 모든 변경 또는 다양한 다른 실시 예를 포함하는 것으로 해석되어야 한다.
Claims (15)
- 전자 장치에 있어서,하우징;적어도 하나의 콘텐츠 및 상기 콘텐츠의 출력과 관계된 적어도 하나의 어플리케이션을 저장하는 메모리;상기 하우징의 일 영역을 통하여 노출되며, 상기 콘텐츠를 표시하는 디스플레이; 및상기 메모리 및 상기 디스플레이와 전기적으로 연결되는 프로세서;를 포함하고,상기 프로세서는,입력에 의하여 선택된 콘텐츠에 대하여 지정된 적어도 하나의 조건 만족 여부를 기반으로 상기 콘텐츠의 적어도 일 부분의 속성을 판단하고, 상기 속성이 VR(virtual reality) 콘텐츠에 관계되는 것으로 판단되면, VR 콘텐츠의 출력과 관계된 어플리케이션의 실행을 기반으로 상기 선택된 콘텐츠를 출력하도록 설정된, 전자 장치.
- 제1항에 있어서,상기 프로세서는,상기 선택된 콘텐츠 상의 제1 영역에 포함된 복수의 픽셀들 간의 컬러 값, 제2 영역에 포함된 복수의 픽셀들 간의 컬러 값, 및 제3 영역 및 제4 영역 간에 동일한 Y좌표로 대응하는 픽셀들 간의 컬러 값이 지정된 비율 이상으로 일치하면, 상기 선택된 콘텐츠를 360도 속성의 VR 콘텐츠로 판단하도록 설정된, 전자 장치.
- 제1항에 있어서,상기 프로세서는,상기 선택된 콘텐츠에 대한 횡 방향 길이 및 종 방향 길이 비율이 지정된 비율에 포함되는 경우, 상기 선택된 콘텐츠를 360도 속성의 VR 콘텐츠로 판단하도록 설정된, 전자 장치.
- 제1항에 있어서,상기 프로세서는,상기 선택된 콘텐츠에 포함된 지정된 크기 이상의 곡선에 대한 곡률 정보와 상기 선택된 콘텐츠가 매핑되는 3차원의 구 오브젝트에 대한 곡률 정보를 비교하고,상기 선택된 콘텐츠가 상기 구 오브젝트에 대한 곡률보다 작은 곡률의 곡선을 지정된 수량 이상으로 포함하는 경우, 상기 선택된 콘텐츠를 360도 속성의 VR 콘텐츠로 판단하도록 설정된, 전자 장치.
- 제1항에 있어서,상기 프로세서는,상기 선택된 콘텐츠에 상기 선택된 콘텐츠를 횡 방향으로 분할하는 가상의 경계선을 부가하고,상기 경계선을 기준하여 상부 영역에서 상측 방향을 향하여 굴절된 적어도 하나의 곡선이 하측 방향을 향하여 굴절된 적어도 하나의 곡선보다 많이 존재하거나, 상기 경계선을 기준하여 하부 영역에서 하측 방향을 향하여 굴절된 적어도 하나의 곡선이 상측 방향을 향하여 굴절된 적어도 하나의 곡선보다 많이 존재하는 경우, 상기 선택된 콘텐츠를 360도 속성의 VR 콘텐츠로 판단하도록 설정된, 전자 장치.
- 제1항에 있어서,상기 프로세서는,상기 선택된 콘텐츠에 포함된 지정된 크기 이상의 종 방향 직선에 대한 수량 및 횡 방향 직선에 대한 수량을 비교하고,상기 종 방향 직선에 대한 수량이 상기 횡 방향 직선에 대한 수량에 상대적으로 많은 경우, 상기 선택된 콘텐츠를 360도 속성의 VR 콘텐츠로 판단하도록 설정된, 전자 장치.
- 제1항에 있어서,상기 프로세서는,상기 선택된 콘텐츠의 중심부에 지정된 크기의 영역을 지정하고, 상기 지정된 크기의 영역 내에 지정된 크기 또는 길이 이상의 횡 방향 직선 또는 종 방향 직선 중 어느 하나가 포함되는 경우, 상기 선택된 콘텐츠를 3D 속성의 VR 콘텐츠로 판단하도록 설정된, 전자 장치.
- 제1항에 있어서,상기 프로세서는,상기 선택된 콘텐츠 내에서 지정된 비율 이상으로 일치하는 적어도 하나의 객체 쌍을 검출하고,상기 적어도 하나의 객체 쌍을 구성하는 객체들 상호 간이 상기 선택된 콘텐츠 상에서 동일한 Y축 좌표를 포함하는 경우, 상기 선택된 콘텐츠를 3D 속성의 VR 콘텐츠로 판단하도록 설정된, 전자 장치.
- 제1항에 있어서,상기 프로세서는,상기 선택된 콘텐츠를 상호 동일한 면적의 제1 영역 및 제2 영역으로 분할하고, 상기 제1 영역 및 제2 영역 각각이 상호 동일한 수량의 객체를 포함하는 경우, 상기 선택된 콘텐츠를3D 속성의 VR 콘텐츠로 판단하도록 설정된, 전자 장치.
- 적어도 하나의 콘텐츠를 선택하는 입력을 수신하는 동작;지정된 적어도 하나의 조건 만족 여부를 기반으로 선택된 콘텐츠의 속성을 판단하는 동작;상기 속성이 VR(virtual reality) 콘텐츠에 관계되는 것으로 판단되면, 상기 VR 콘텐츠의 출력과 관계된 어플리케이션의 실행을 제어하는 동작; 및상기 어플리케이션의 실행을 기반으로 상기 선택된 콘텐츠의 출력을 처리하는 동작;을 포함하는, 콘텐츠 출력 방법.
- 제10항에 있어서,상기 선택된 콘텐츠의 속성을 판단하는 동작은,상기 선택된 콘텐츠 상의 제1 영역에 포함된 복수의 픽셀들 간의 컬러 값, 제2 영역에 포함된 복수의 픽셀들 간의 컬러 값, 및 제3 영역 및 제4 영역 간에 동일한 Y좌표로 대응하는 픽셀들 간의 컬러 값이 지정된 비율 이상으로 일치하면 상기 선택된 콘텐츠를 360도 속성의 VR 콘텐츠로 판단하는 동작;을 포함하는, 콘텐츠 출력 방법.
- 제10항에 있어서,상기 선택된 콘텐츠의 속성을 판단하는 동작은,상기 선택된 콘텐츠에 대한 횡 방향 길이 및 종 방향 길이 비율을 판단하는 동작; 및상기 횡 방향 길이 및 종 방향 길이 간의 비율이 지정된 길이 비율에 포함되면 상기 선택된 콘텐츠를 360도 속성의 VR 콘텐츠로 판단하는 동작;을 포함하는, 콘텐츠 출력 방법.
- 제10항에 있어서,상기 선택된 콘텐츠의 속성을 판단하는 동작은,상기 선택된 콘텐츠에 포함된 지정된 크기 이상의 곡선에 대한 곡률 정보와 상기 선택된 콘텐츠가 매핑되는 3차원 구 오브젝트에 대한 곡률 정보를 비교하는 동작; 및상기 선택된 콘텐츠가 상기 구 오브젝트에 대한 곡률보다 작은 곡률의 곡선을 지정된 수량 이상으로 포함하면 상기 선택된 콘텐츠를 360도 속성의 VR 콘텐츠로 판단하는 동작;을 포함하는, 콘텐츠 출력 방법.
- 제10항에 있어서,상기 선택된 콘텐츠의 속성을 판단하는 동작은,상기 선택된 콘텐츠에 상기 선택된 콘텐츠를 횡 방향으로 분할하는 가상의 경계선을 부가하는 동작;상기 경계선을 기준하여 상부 영역 및 하부 영역에 포함된 곡선의 굴절 방향을 판단하는 동작; 및상기 상부 영역에서 상측 방향을 향하여 굴절된 적어도 하나의 곡선이 하측 방향을 향하여 굴정된 적어도 하나의 곡선보다 많이 존재하거나, 상기 하부 영역에서 하측 방향을 향하여 굴절된 적어도 하나의 곡선이 상측 방향을 향하여 굴절된 적어도 하나의 곡선보다 많이 존재하면 상기 선택된 콘텐츠를 360도 속성의 VR 콘텐츠로 판단하는 동작;을 포함하는, 콘텐츠 출력 방법.
- 제10항에 있어서,상기 선택된 콘텐츠의 속성을 판단하는 동작은,상기 선택된 콘텐츠에 포함된 지정된 크기 이상의 종 방향 직선에 대한 수량 및 횡 방향 직선에 대한 수량을 비교하는 동작; 및상기 종 방향 직선에 대한 수량이 상기 횡 방향 직선에 대한 수량에 상대적으로 많으면 상기 선택된 콘텐츠를 360도 속성의 VR 콘텐츠로 판단하는 동작;을 포함하는, 콘텐츠 출력 방법.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US16/337,987 US10818075B2 (en) | 2016-10-13 | 2017-10-11 | Content output method and electronic device for supporting same |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020160133031A KR102620195B1 (ko) | 2016-10-13 | 2016-10-13 | 콘텐츠 출력 방법 및 이를 지원하는 전자 장치 |
| KR10-2016-0133031 | 2016-10-13 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2018070766A1 true WO2018070766A1 (ko) | 2018-04-19 |
Family
ID=61905626
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/KR2017/011163 Ceased WO2018070766A1 (ko) | 2016-10-13 | 2017-10-11 | 콘텐츠 출력 방법 및 이를 지원하는 전자 장치 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US10818075B2 (ko) |
| KR (1) | KR102620195B1 (ko) |
| WO (1) | WO2018070766A1 (ko) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20240049836A (ko) | 2021-09-02 | 2024-04-17 | 스냅 인코포레이티드 | 전자 안경류 디바이스들에 대한 스캔 기반 메시징 |
| CN117916694A (zh) | 2021-09-02 | 2024-04-19 | 斯纳普公司 | 用于指示用户状态的快照消息 |
| US12072489B2 (en) * | 2021-09-02 | 2024-08-27 | Snap Inc. | Social connection through distributed and connected real-world objects |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20100021905A (ko) * | 2008-08-18 | 2010-02-26 | 삼성전자주식회사 | 2차원/3차원 재생 모드 결정 방법 및 장치 |
| KR20120082622A (ko) * | 2011-01-14 | 2012-07-24 | 에스케이플래닛 주식회사 | 증강 현실 서비스 제공 시스템 및 방법 |
| KR20130088722A (ko) * | 2012-01-31 | 2013-08-08 | 삼성전자주식회사 | 3d 안경, 디스플레이장치 및 그 제어방법 |
| US20140267228A1 (en) * | 2013-03-14 | 2014-09-18 | Microsoft Corporation | Mapping augmented reality experience to various environments |
| KR20160108158A (ko) * | 2015-03-05 | 2016-09-19 | 삼성전자주식회사 | 3차원 배경 콘텐트를 합성하는 방법 및 디바이스 |
| US20170206708A1 (en) * | 2016-01-19 | 2017-07-20 | Immersv, Inc. | Generating a virtual reality environment for displaying content |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| FR2948475A1 (fr) * | 2009-07-24 | 2011-01-28 | Bionext | Procede de caracterisation d'objets tridimensionnels |
| US9918082B2 (en) | 2014-10-20 | 2018-03-13 | Google Llc | Continuous prediction domain |
-
2016
- 2016-10-13 KR KR1020160133031A patent/KR102620195B1/ko active Active
-
2017
- 2017-10-11 WO PCT/KR2017/011163 patent/WO2018070766A1/ko not_active Ceased
- 2017-10-11 US US16/337,987 patent/US10818075B2/en active Active
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20100021905A (ko) * | 2008-08-18 | 2010-02-26 | 삼성전자주식회사 | 2차원/3차원 재생 모드 결정 방법 및 장치 |
| KR20120082622A (ko) * | 2011-01-14 | 2012-07-24 | 에스케이플래닛 주식회사 | 증강 현실 서비스 제공 시스템 및 방법 |
| KR20130088722A (ko) * | 2012-01-31 | 2013-08-08 | 삼성전자주식회사 | 3d 안경, 디스플레이장치 및 그 제어방법 |
| US20140267228A1 (en) * | 2013-03-14 | 2014-09-18 | Microsoft Corporation | Mapping augmented reality experience to various environments |
| KR20160108158A (ko) * | 2015-03-05 | 2016-09-19 | 삼성전자주식회사 | 3차원 배경 콘텐트를 합성하는 방법 및 디바이스 |
| US20170206708A1 (en) * | 2016-01-19 | 2017-07-20 | Immersv, Inc. | Generating a virtual reality environment for displaying content |
Also Published As
| Publication number | Publication date |
|---|---|
| KR102620195B1 (ko) | 2024-01-03 |
| US20190213781A1 (en) | 2019-07-11 |
| US10818075B2 (en) | 2020-10-27 |
| KR20180041001A (ko) | 2018-04-23 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2017209528A1 (en) | Electronic apparatus and operating method thereof | |
| WO2016137187A1 (en) | Apparatus and method for providing screen mirroring service | |
| WO2017131410A1 (en) | Electronic device and method for controlling the same | |
| WO2016175452A1 (en) | Fingerprint information processing method and electronic device supporting the same | |
| WO2019039871A1 (en) | ELECTRONIC DEVICE AND METHOD FOR OPERATING APPLICATIONS | |
| WO2018034555A1 (ko) | 디스플레이를 제어하는 전자 장치 및 방법 | |
| WO2017209446A1 (en) | Electronic device and information processing system including the same | |
| WO2018044051A1 (en) | Method for driving display including curved display area, display driving circuit supporting the same, and electronic device including the same | |
| WO2018128509A1 (en) | Electronic device and method for sensing fingerprints | |
| WO2018074761A1 (ko) | 이미지를 렌더링 하는 장치 및 방법 | |
| WO2018174648A1 (ko) | 전자 장치 및 이를 이용한 카메라 촬영 환경 및 장면에 따른 영상 처리 방법 | |
| WO2017026821A1 (ko) | 전자 장치 및 전자 장치의 입력 방법 | |
| WO2016093419A1 (ko) | 시선 캘리브레이션 방법 및 그 전자 장치 | |
| WO2018155928A1 (ko) | 복수의 생체 센서를 이용하여 인증을 수행하기 위한 전자 장치 및 그의 동작 방법 | |
| WO2018106019A1 (ko) | 콘텐츠 출력 방법 및 이를 지원하는 전자 장치 | |
| WO2018052242A1 (en) | Method for displaying soft key and electronic device thereof | |
| WO2018097514A1 (en) | Mobile device for providing exercise contents and wearable device connected therewith | |
| WO2018131873A1 (ko) | 전자 장치 및 이를 포함하는 차량 | |
| WO2018038526A1 (en) | Electronic device and method for measuring heart rate based on infrared rays sensor using the same | |
| WO2018105955A2 (ko) | 객체를 디스플레이하기 위한 방법 및 그 전자 장치 | |
| WO2018021723A1 (ko) | 이미지의 유사도에 기초하여 이미지들을 연속적으로 표시하는 방법 및 장치 | |
| WO2018135903A1 (en) | Electronic device and method for displaying screen by the same | |
| WO2018048217A1 (en) | Electronic apparatus and operating method thereof | |
| WO2018199432A1 (ko) | 객체에 대응하는 콘텐트를 출력하기 위한 방법 및 그 전자 장치 | |
| WO2018048130A1 (ko) | 컨텐츠 재생 방법 및 이를 지원하는 전자 장치 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17860286 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 17860286 Country of ref document: EP Kind code of ref document: A1 |