WO2024014687A1 - 전자 장치 및 그 ui 제공 방법 - Google Patents

전자 장치 및 그 ui 제공 방법 Download PDF

Info

Publication number
WO2024014687A1
WO2024014687A1 PCT/KR2023/006788 KR2023006788W WO2024014687A1 WO 2024014687 A1 WO2024014687 A1 WO 2024014687A1 KR 2023006788 W KR2023006788 W KR 2023006788W WO 2024014687 A1 WO2024014687 A1 WO 2024014687A1
Authority
WO
WIPO (PCT)
Prior art keywords
gui
scroll
scroll speed
display
gui items
Prior art date
Application number
PCT/KR2023/006788
Other languages
English (en)
French (fr)
Inventor
이병주
서장원
Original Assignee
삼성전자주식회사
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Publication of WO2024014687A1 publication Critical patent/WO2024014687A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0485Scrolling or panning

Definitions

  • the disclosure relates to an electronic device and a method of providing a UI thereof, and more specifically, to an electronic device that controls a UI screen including GUI items of various sizes based on navigation input and a method of providing the UI.
  • display devices such as TVs provide a variety of content to meet the needs of users who want newer and more diverse functions.
  • An electronic device for achieving the above object includes a display, a plurality of Graphic User Interface (GUI) items, and a focus GUI located in one GUI item of the plurality of GUI items. It includes one or more processors that control the display to display a UI (User Interface) screen, and control the display to move and display the plurality of GUI items in one direction according to a preset navigation input.
  • the one or more processors identify size information of each of the plurality of first GUI items included in the scroll target section based on the preset navigation input, and set scroll speed based on the size information of each of the plurality of first GUI items. and control the display to move and display the plurality of GUI items in one direction based on the scroll speed.
  • the one or more processors identify the scroll speed based on width information of each of the plurality of first GUI items, and When the scroll direction corresponding to is vertical, the scroll speed can be identified based on height information of each of the plurality of first GUI items.
  • the one or more processors identify the minimum motion required time based on the size of the smallest GUI item among the plurality of first GUI items divided by the scroll speed, and the minimum motion required time is set to a preset perceptible level. If it is less than the motion time, the scroll speed can be updated based on the perceptible motion time.
  • the one or more processors when the second navigation input is identified, display each of the plurality of second GUI items included in the scroll target section based on the second navigation input. Size information may be identified, and the scroll speed may be updated based on the size information of each of the plurality of second GUI items.
  • the one or more processors while scrolling based on the preset navigation input is in progress, based on at least one of real-time loading of the GUI item or looping of the GUI item,
  • the scroll target section is re-identified based on the update time, and the scroll speed is based on size information of each of the plurality of third GUI items included in the re-identified scroll target section. can be updated.
  • the one or more processors may update the scroll speed based on difference information between the size of the display and the preset size, and the scroll speed.
  • the display may be implemented as a rotatable display.
  • the one or more processors control the display to move and display the plurality of GUI items in one direction based on the scroll speed while the display is in landscape mode, and when the display is rotated to portrait mode, the display is displayed in the portrait mode. correct the scroll speed by reducing the scroll speed based on the width information of the display in the portrait mode, and move the plurality of GUI items in one direction based on the corrected scroll speed while the display is in the portrait mode
  • the display can be controlled to display by command.
  • the one or more processors work a plurality of first pixels corresponding to the plurality of GUI items and a plurality of second pixels corresponding to a spare area between the plurality of GUI items at a constant speed based on the scroll speed.
  • the display can be controlled to display by moving in a certain direction.
  • the one or more processors may identify the scroll speed based on size information of each of the plurality of first GUI items and a basic scroll speed corresponding to each of the plurality of first GUI items.
  • the basic scroll speed information of each of the plurality of first GUI items includes a scroll time equally assigned to each of the plurality of first GUI items and a scroll direction of the preset navigation input to each of the plurality of first GUI items. This may be speed information calculated based on the number of included pixels.
  • a method of providing a UI of an electronic device includes displaying a UI (User Interface) screen including a plurality of Graphic User Interface (GUI) items and a focus GUI located in one of the plurality of GUI items. Step, identifying size information of each of a plurality of first GUI items included in the scroll target section based on a preset navigation input, identifying scroll speed based on size information of each of the plurality of first GUI items And, it may include moving and displaying the plurality of GUI items in one direction based on the scroll speed.
  • GUI Graphic User Interface
  • the operation is performed using a plurality of graphic user interfaces (GUIs).
  • GUIs graphic user interfaces
  • FIG. 1 is a diagram for explaining an implementation example of an electronic device according to an embodiment of the present disclosure.
  • FIG. 2A is a block diagram showing the configuration of an electronic device according to an embodiment.
  • FIG. 2B is a diagram illustrating a detailed configuration of an implementation example of an electronic device according to an embodiment of the present disclosure.
  • Figure 3 is a diagram for explaining a navigation method for GUI items according to an embodiment.
  • FIGS. 4A to 4C are diagrams for explaining a method of identifying scroll speed according to an embodiment.
  • FIGS. 5 and 6A to 6C are diagrams for explaining a method of identifying scroll speed according to a scroll direction according to an embodiment.
  • FIG. 7 is a diagram illustrating a method of identifying scroll speed according to a scroll direction according to an embodiment.
  • FIG. 8 is a diagram illustrating a scroll speed identification method considering cognitive characteristics according to an embodiment.
  • FIGS. 9 and 10 are diagrams for explaining a scroll speed update method according to an embodiment.
  • 11 and 12 are diagrams for explaining a scroll speed update method according to an embodiment.
  • FIG. 13 is a diagram illustrating a method of updating scroll speed according to display size according to an embodiment.
  • FIG. 14 is a diagram illustrating a method of updating scroll speed according to a display direction according to an embodiment.
  • a “module” or “unit” performs at least one function or operation, and may be implemented as hardware or software, or as a combination of hardware and software. Additionally, a plurality of “modules” or a plurality of “units” may be integrated into at least one module and implemented with one or more processors (not shown), except for “modules” or “units” that need to be implemented with specific hardware. You can.
  • FIG. 1 is a diagram for explaining an implementation example of an electronic device according to an embodiment of the present disclosure.
  • the electronic device 100 may be implemented as a display device that can be remotely controlled by the remote control device 200.
  • the electronic device 100 may be a TV, a tablet PC, a mobile phone, a desktop PC, a laptop PC, a PDA, a portable multimedia player (PMP), a large format display (LFD), a digital signage, or a digital signage (DID).
  • PMP portable multimedia player
  • LFD large format display
  • DID digital signage
  • Any device with a display function such as an information display, video wall, projector, refrigerator, air conditioner, air purifier, medical device, etc. is applicable without limitation.
  • the remote control device 200 may be implemented as a remote control, but is not necessarily limited to this and may also be implemented as a device capable of remote control using an application, such as a smartphone.
  • the electronic device 100 provides a User Interface (UI) screen including a plurality of Graphic User Interface (GUI) items 11, 12, 13, 14, 15, 16, 17, and 18 and remotely Navigation operations between a plurality of GUI items can be controlled based on navigation input received from the control device 200.
  • UI User Interface
  • GUI Graphic User Interface
  • the electronic device 100 may provide a content playback screen and adjust the playback section of the content based on a navigation input received from the remote control device 200.
  • the electronic device 100 may perform various control functions depending on the type/function of the screen provided based on the navigation input received from the remote control device 200.
  • the electronic device 100 includes a plurality of GUI items (11, 12, 13, 14, 15, 16, 17, 18) having various sizes and/or various ratios, and any one of these GUI items A UI screen including the focus item 20 located at (11) can be provided.
  • the electronic device 100 displays a plurality of GUI items 11, 12, 13, 14 based on a preset navigation input received from the remote control device 200, for example, a long press input. 15, 16, 17, 18) can be displayed by moving them in one direction. In this case, as shown in FIG.
  • the display position of the focus item 20 is fixed, and as the plurality of GUI items 11, 12, 13, 14, 15, 16, 17, and 18 move, the focus item 20 Another GUI item 12 adjacent to the GUI item 11 is located, and a new GUI item 19 that is not provided on the UI screen may be provided on the UI screen.
  • GUI items with a relatively large size are scrolled at a fast speed
  • GUI items with a relatively small size are scrolled at a slow speed.
  • the speed changes depending on the size of the GUI item, motion is interrupted for each section, causing a momentary lag, which can be perceived as slow or lacks overall navigation sensibility.
  • FIG. 2A is a block diagram showing the configuration of an electronic device according to an embodiment.
  • the electronic device 100 includes a display 110 and a processor 120.
  • the display 110 may be implemented as a display including a self-emitting device or a display including a non-emitting device and a backlight.
  • various types of displays such as LCD (Liquid Crystal Display), OLED (Organic Light Emitting Diodes) displays, LED (Light Emitting Diodes), PDP (Plasma Display Panel), QLED (Quantum dot light-emitting diodes), etc.
  • the display 160 may also include a driving circuit and a backlight unit that may be implemented in the form of a-si TFT, low temperature poly silicon (LTPS) TFT, or organic TFT (OTFT).
  • the display 110 is implemented as a touch screen combined with a touch sensor, a flexible display, a rollable display, a 3D display, a display in which a plurality of display modules are physically connected, etc. It can be.
  • One or more processors 120 are electrically connected to the display 110 and control the overall operation of the electronic device 100.
  • One or more processors 120 may be comprised of one or multiple processors.
  • one or more processors may be implemented with at least one software, at least one hardware, or a combination of at least one software and at least one hardware.
  • software or hardware logic corresponding to one or more processors may be implemented in one chip.
  • software or hardware logic corresponding to some of the plurality of processors may be implemented in one chip, and software or hardware logic corresponding to the remainder may be implemented in another chip.
  • the processor 120 may perform operations of the electronic device 100 according to various embodiments of the present disclosure by executing at least one instruction stored in a memory (not shown).
  • the processor 120 includes a digital signal processor (DSP), a microprocessor, a graphics processing unit (GPU), an artificial intelligence (AI) processor, and a neural processor (NPU) that process digital image signals.
  • DSP digital signal processor
  • GPU graphics processing unit
  • AI artificial intelligence
  • NPU neural processor
  • Processing Unit TCON (Time controller).
  • CPU central processing unit
  • MCU Micro Controller Unit
  • MPU micro processing unit
  • controller It may include one or more of a (controller), an application processor (AP), a communication processor (CP), or an ARM processor, or may be defined by the corresponding term.
  • the processor 120 may be implemented as a System on Chip (SoC) with a built-in processing algorithm, large scale integration (LSI), or in the form of an application specific integrated circuit (ASIC) or a Field Programmable Gate Array (FPGA).
  • SoC System on Chip
  • LSI large scale integration
  • ASIC application specific integrated circuit
  • FPGA Field Programmable Gate Array
  • the processor 120 uses the display 110 to display various types of screens that can be controlled by the remote control device 200, such as a UI screen including a plurality of Graphic User Interface (GUI) items and a content playback screen. ) can be controlled.
  • a UI screen including a plurality of Graphic User Interface (GUI) items and a content playback screen.
  • GUI Graphic User Interface
  • the processor 120 may control the display 110 to display a user interface (UI) screen including a plurality of GUI items and a focus GUI located on one of the plurality of GUI items.
  • UI user interface
  • the plurality of GUI items are arranged in a specific direction, such as horizontally, vertically, or diagonally, and may have a specific shape (eg, square, round square, circle, diamond, etc.).
  • the focus GUI may be highlighted on the border of the GUI item, but is not necessarily limited to this, and the entire GUI item may be highlighted or only a portion of the border may be highlighted.
  • the processor 120 may provide a UI screen including a plurality of GUI items having various sizes and/or various ratios and a focus item located in one of the GUI items.
  • the electronic device 100 fixes the position of the focus item and selects a plurality of GUI items based on a preset navigation input received from the remote control device 200, for example, a long press input. It can be displayed by moving it in any direction.
  • FIG. 2B is a diagram illustrating a detailed configuration of an implementation example of an electronic device according to an embodiment of the present disclosure.
  • the electronic device 100' includes a display 110, a processor 120, a memory 130, a communication interface 140, a user interface 150, an output unit 160, and a camera 170.
  • a display 110 includes a display 110, a processor 120, a memory 130, a communication interface 140, a user interface 150, an output unit 160, and a camera 170.
  • the memory 130 is electrically connected to the processor 120 and can store data necessary for various embodiments of the present disclosure.
  • the memory 130 may be implemented as a memory embedded in the electronic device 100' or as a memory detachable from the electronic device 100, depending on the data storage purpose. For example, data for driving the electronic device 100 is stored in a memory embedded in the electronic device 100, and data for extended functions of the electronic device 100' is stored in the electronic device 100'. It can be stored in removable memory. Meanwhile, in the case of memory embedded in the electronic device 100', volatile memory (e.g., dynamic RAM (DRAM), static RAM (SRAM), or synchronous dynamic RAM (SDRAM), etc.), non-volatile memory (e.g.
  • DRAM dynamic RAM
  • SRAM static RAM
  • SDRAM synchronous dynamic RAM
  • a memory card e.g., CF ( compact flash), SD (secure digital), Micro-SD (micro secure digital), Mini-SD (mini secure digital), xD (extreme digital), MMC (multi-media card), etc.
  • OTPROM programmable ROM
  • PROM programmable ROM
  • EPROM erasable and programmable ROM
  • EEPROM electrically erasable and programmable ROM
  • mask ROM flash ROM
  • flash memory e.g. NAND flash or NOR flash
  • flash memory e.g. NAND flash or NOR flash
  • SSD solid state drive
  • a memory card e.g., CF ( compact flash), SD (secure digital), Micro-SD (micro secure digital), Mini-SD (mini secure digital), xD (extreme digital), MMC (multi-media card), etc.
  • USB port e.g., USB memory
  • the memory 130 may store a computer program including at least one instruction or instructions for controlling the electronic device 100'.
  • the memory 130 may include images received from an external device (e.g., a source device), an external storage medium (e.g., USB), an external server (e.g., a web hard drive), that is, an input image, Various data, information, etc. can be stored.
  • an external device e.g., a source device
  • an external storage medium e.g., USB
  • an external server e.g., a web hard drive
  • the memory 130 may store basic scroll speed information assigned to GUI items of various sizes and/or ratios (hereinafter referred to as size/ratio). For example, different basic scroll speeds may be stored for each ratio of GUI items. Additionally, even if the ratio is the same, different basic scroll speeds may be stored for GUI items of different sizes.
  • the ratio of the GUI item may be the horizontal/vertical ratio of the square-shaped GUI item.
  • the GUI item may be in the form of a circle, diamond, etc., and even in this case, the ratio of the GUI item may be a horizontal/vertical ratio.
  • the memory 130 may be implemented as a single memory that stores data generated in various operations according to the present disclosure. However, according to another embodiment, the memory 130 may be implemented to include a plurality of memories each storing different types of data or data generated at different stages.
  • various data are described as being stored in the external memory 130 of the processor 120, but at least some of the above-described data may be stored in at least one of the electronic device 100' or the processor 120. Accordingly, it may be stored in the internal memory of the processor 120.
  • the communication interface 140 may be a component that communicates with an external device.
  • the communication interface 140 includes AP-based Wi-Fi (Wireless LAN network), Bluetooth, Zigbee, wired/wireless LAN (Local Area Network), WAN (Wide Area Network), Ethernet, IEEE 1394, HDMI (High-Definition Multimedia Interface), USB (Universal Serial Bus), MHL (Mobile High-Definition Link), AES/EBU (Audio Engineering Society/European Broadcasting Union), Optical Streaming or downloading from an external device (e.g., source device), external storage medium (e.g., USB memory), external server (e.g., web hard), etc. through communication methods such as coaxial, etc. You can receive video signals through .
  • the video signal may be a digital video signal of any one of Standard Definition (SD), High Definition (HD), Full HD, or Ultra HD video, but is not limited thereto.
  • the communication interface 140 is implemented as a remote control transceiver and can receive a remote control signal transmitted from the remote control device 200.
  • the remote control transceiver may receive a remote control signal from the external remote control device 200 or transmit a remote control signal through at least one communication method among infrared communication, Bluetooth communication, or Wi-Fi communication.
  • the user interface 150 may be implemented as a device such as buttons, a touch pad, a mouse, and a keyboard, or as a touch screen that can also perform the display function and manipulation input function described above.
  • the output unit 160 outputs an acoustic signal.
  • the output unit 160 may convert the digital sound signal processed by the processor 120 into an analog sound signal, amplify it, and output it.
  • the output unit 160 may include at least one speaker unit, a D/A converter, an audio amplifier, etc., capable of outputting at least one channel.
  • the output unit 160 may be implemented to output various multi-channel sound signals.
  • the processor 120 may control the output unit 160 to enhance and output the input audio signal to correspond to the enhancement processing of the input image.
  • the processor 120 converts an input 2-channel sound signal into a virtual multi-channel (e.g., 5.1 channel) sound signal, or recognizes the location of the electronic device 100' to create a sound signal optimized for space. It can be processed into a three-dimensional sound signal, or an optimized sound signal can be provided depending on the type of input video (for example, content genre). According to one example, the processor 120 may control the output unit 160 to output audio feedback corresponding to UI feedback according to various embodiments.
  • a virtual multi-channel e.g., 5.1 channel
  • the processor 120 may control the output unit 160 to output audio feedback corresponding to UI feedback according to various embodiments.
  • the camera 170 may be turned on and perform photography according to a preset event.
  • the camera 170 may convert the captured image into an electrical signal and generate image data based on the converted signal.
  • a subject is converted into an electrical image signal through a semiconductor optical device (CCD; Charge Coupled Device), and the converted image signal can be amplified and converted into a digital signal and then processed.
  • CCD semiconductor optical device
  • the camera 170 may not be included depending on the implementation of the electronic device 100'.
  • the electronic device 100' may additionally include a tuner and a demodulator depending on implementation.
  • a tuner (not shown) may receive an RF broadcast signal by tuning a channel selected by the user or all previously stored channels among RF (Radio Frequency) broadcast signals received through an antenna.
  • the demodulator (not shown) may receive the digital IF signal (DIF) converted from the tuner, demodulate it, and perform channel decoding.
  • DIF digital IF signal
  • Figure 3 is a diagram for explaining a navigation method for GUI items according to an embodiment.
  • the processor 120 may display a UI screen including a plurality of GUI items and a focus GUI located on one of the plurality of GUI items (S310).
  • the ratio and/or size of at least some GUI items among the plurality of GUI items may be different.
  • the processor 120 may identify size information of each of the plurality of first GUI items included in the scroll target section (S330).
  • the size information may include at least one of width or height, or at least one of ratio information.
  • the processor 120 may use a preset navigation input to correspond to a user input for continuously moving a plurality of GUI items.
  • the preset navigation input may be a long press input received from the remote control device 200, but is not limited thereto.
  • the preset navigation input may be a continuous key input received from a wheel input device, or a user input identical/similar thereto.
  • continuous key input refers to input in which a threshold number of tick inputs or more are generated at a threshold speed or higher in a wheel input device.
  • the tick input may be an input corresponding to a basic operation unit in at least one of a wheel button or a touch panel that receives the wheel input.
  • a tick input is the minimum unit that can be recognized by the hardware and may mean that the device physically moves one space. If the wheel input device is implemented in software, it can be the minimum movement unit defined in software.
  • the wheel input device may be provided in the remote control device 200, but may also be provided in the electronic device 100.
  • the processor 120 may identify a plurality of first GUI items included in the scroll target section based on the direction of the navigation input. For example, if the direction of navigation input is to the right, all of the plurality of first GUI items listed to the right (GUI items not displayed on the UI screen but included in the list to the right) are included in the scroll target section. , A plurality of first GUI items displayed on the current UI screen in the right direction may be included in the scroll target section. However, it is not limited to this, and among the plurality of first GUI items listed to the right, GUI items corresponding to N times the number of the plurality of first GUI items displayed on the current UI screen may be included in the scroll target section. In addition, the scroll target section can be determined in various ways.
  • the processor 120 may identify the scroll speed based on size information of each of the plurality of first GUI items (S340). For example, the processor 120 may identify the scroll speed based on each size information and basic scroll speed information of the plurality of first GUI items. For example, the processor 120 may identify the scroll speed based on size information and predefined time information of each of the plurality of first GUI items. For example, the processor 120 may identify the scroll speed based on size information and weight information of each of the plurality of first GUI items. In addition, scroll speed can be identified in various ways, and detailed methods will be described later.
  • the processor 120 may control the display 110 to move and display a plurality of GUI items in one direction based on the scroll speed (S350).
  • FIGS. 4A to 4C are diagrams for explaining a method of identifying scroll speed according to an embodiment.
  • section 410 may be a previous scroll section in which scrolling has already occurred.
  • the processor 120 may identify the scroll speed based on size information of each of the plurality of first GUI items and basic scroll speed information corresponding to each of the plurality of first GUI items.
  • the basic scroll speed of the first GUI item may be a predefined speed based on the ratio/size of each first GUI item.
  • the basic scroll speed may be a speed calculated based on the scroll time equally allocated to each of the plurality of first GUI items and the size of each of the plurality of first GUI items.
  • GUI items with the same ratio have the same size and an appropriate basic scroll speed (or appropriate scroll speed) is defined for each ratio of the GUI items.
  • the appropriate scroll speed for a 16:9 item may be v1
  • the appropriate scroll speed for a 2:3 item may be v2
  • the appropriate scroll speed for a 1:1 item may be v3.
  • the optimal scroll speed V is the speed of each GUI item. Based on the appropriate scroll speed and the number of GUI items corresponding to each ratio, it can be calculated as shown in Equation 1 below.
  • the scroll speed is calculated based on the preset appropriate speed of each GUI item, but the scroll speed is not necessarily limited to this.
  • the scroll speed by dividing the size of the scroll target section, for example, the number of pixels (eg, pixels in the horizontal direction) corresponding to the scroll direction, by the scroll time.
  • the scroll time may be a predefined time depending on the size (or length) of the scroll target section or the number of GUI items included in the scroll target section.
  • scrolling speed can be calculated as the number of pixels per time.
  • the size ( Alternatively, the scroll speed can be calculated by calculating the length) and dividing the calculated size by the predefined scroll time.
  • the size of the scroll target section 420 may be calculated as a length in pixels.
  • the length of the area multiplied by the number is added to the size of the plurality of GUI items 421 to 427, and the value is calculated as the size of the scroll target section 420. (or length) can be calculated.
  • the predefined scroll time may be a time determined according to the size of the scroll target section or the number of GUI items included in the scroll target section.
  • the sizes (w31, w32, w33, w34, w36, w37) of the plurality of GUI items 431 to 437 and the extra area between the plurality of GUI items 431 to 437 Based on this, the size of the scroll target section 420, for example, the length in pixels, can be calculated, and the scroll speed can be calculated by dividing the calculated size by a predefined scroll time.
  • each redundant area is divided based on the center of each redundant area, and the left redundant area is assigned to the previous GUI item and the right redundant area is assigned to the next GUI item.
  • the speed corresponding to GUI item 431 is applied to the pixel area corresponding to w31
  • the speed corresponding to GUI item 432 is applied to the pixel area corresponding to w32, to calculate the scroll speed corresponding to the scroll target section. can do.
  • the processor 120 may obtain scroll speed by inputting size information and number information of a plurality of GUI items included in the scroll target section into a learned neural network model.
  • the neural network model may be trained to output the scroll speed by learning not only the size and number of GUI items, but also information such as cognitive characteristics, display size, and display mode, which will be described later. It is also possible to learn other usage history information and user profile information.
  • the processor 120 may obtain a predefined scroll speed according to the length of the scroll target section.
  • the predefined scroll speed may be mapped to the scroll target section by length and stored in the memory 130 in the form of a lookup table. In this case, even if the scroll target section has the same length, different scroll speeds may be mapped according to the ratio or number of items of different sizes included in the scroll target section.
  • the processor 120 may calculate the scroll speed by multiplying the reference scroll speed by a preset weight corresponding to the length of the scroll target section. In this case, even if the scroll target section has the same length, different weights may be applied depending on the ratio or number of items of different sizes included in the scroll target section.
  • the processor 120 may update scroll information by considering usage history information, user profile information, etc.
  • scroll information may be updated based on user history information such as scroll speed adjustment history, scroll repetition history, menu operation speed, etc., and the user's age.
  • the processor 120 moves a plurality of first pixels corresponding to a plurality of GUI items and a plurality of second pixels corresponding to an extra area between the plurality of GUI items in one direction at a constant speed based on the scroll speed. It can be displayed by moving it to . Accordingly, even when GUI items of various sizes and/or ratios are mixed in the rows or columns of the UI screen, the scroll speed is maintained constant, making it possible to provide smooth scrolling motion during navigation.
  • FIGS. 5, 6A, and 6B are diagrams for explaining a method of identifying scroll speed according to a scroll direction according to an embodiment.
  • the processor 120 may display a UI screen including a plurality of GUI items and a focus GUI located on one of the plurality of GUI items (S510).
  • the processor 120 may identify the scroll speed based on the width information of each of the plurality of first GUI items (S530).
  • the processor 120 may identify the scroll speed based on the width information of each of the plurality of GUI items 611 to 619 arranged in the horizontal direction. You can. For example, as shown in Equation 1, the scroll speed can be obtained by multiplying the number of items corresponding to the same width by the appropriate scroll speed corresponding to the item, adding the calculated value, and then dividing by the total number of items.
  • the processor 120 may obtain the scroll speed by dividing the horizontal length of the scroll target section by a predefined scroll time, as described above.
  • the predefined scroll time may be a time determined according to the size of the scroll target section or the size/number of GUI items included in the scroll target section.
  • the processor 120 may obtain a predefined scroll speed according to the horizontal length of the scroll target section.
  • the predefined scroll speed may be mapped to the scroll target section by length and stored in the memory 130 in the form of a lookup table. In this case, even if the scroll target section has the same length, different scroll speeds may be mapped according to the ratio or number of items of different sizes included in the scroll target section.
  • the processor 120 may calculate the scroll speed by multiplying the reference scroll speed by a preset weight corresponding to the horizontal length of the scroll target section. In this case, even if the scroll target section has the same length, different weights may be applied depending on the ratio or number of items of different sizes included in the scroll target section.
  • the processor 120 may identify the scroll speed based on the height information of each of the plurality of first GUI items (S550).
  • the processor 120 may identify the scroll speed based on the height information of each of the plurality of GUI items 621 to 626 arranged in the vertical direction. You can. For example, the processor 120 may obtain the scroll speed by multiplying the number of items corresponding to the same height by the appropriate scroll speed corresponding to the item, adding the calculated value, and then dividing by the total number of items, as shown in Equation 1. there is. In addition, scroll speed can be obtained in the same/similar manner to horizontal scrolling.
  • the processor 120 collects height information for each of the plurality of GUI items 631 to 634 arranged in the vertical direction. Based on this, the scroll speed can be identified. As shown, when two GUI items 633 and 635 are arranged vertically based on a specific GUI item 632 arranged in the scroll direction, the processor 120 is positioned at a predefined position (for example, on the left). You can scroll to the GUI item 633 of .
  • the processor 120 multiplies the number of GUI items corresponding to the same height by the appropriate scroll speed corresponding to the item, adds the calculated value, and divides it by the total number of items to obtain the scroll speed, as shown in Equation 1. You can. In addition, scroll speed can be obtained in the same/similar manner to horizontal/vertical scrolling.
  • FIG. 7 is a diagram illustrating a method of identifying scroll speed according to a scroll direction according to an embodiment.
  • the processor 120 may calculate the scroll speed based on the sizes of GUI items arranged in the diagonal direction. For example, the processor 120 adjusts the movement speed from the specific pixel 711-1 to the left diagonal pixel 711-2 to the specific pixel 711-1 > lower pixel 711-3 > left pixel 711. -2) It can be calculated based on the distance traveled. For example, the distance can be identified in the same way for all diagonal pixels included in the scroll section, and the scroll speed can be calculated by dividing the identified distance by the predefined scroll time.
  • the predefined scroll time may be a time determined based on the size and number of GUI items arranged diagonally.
  • FIG. 8 is a diagram illustrating a scroll speed identification method considering cognitive characteristics according to an embodiment.
  • the processor 120 may update the scroll speed based on a perceptible motion time for smooth scroll motion. This is because if the scroll speed v is too fast, relatively small GUI items may appear to jump momentarily.
  • the processor 120 may identify the minimum motion required time based on the size and scroll speed of the smallest GUI item among the plurality of first GUI items included in the scroll target section (S810 ). Specifically, the minimum motion required time may be identified based on the size of the smallest GUI item among the plurality of first GUI items divided by the scroll speed. For example, the minimum motion required time t can be calculated based on Equation 2 below.
  • t may be the minimum motion required time
  • W may be the size (e.g., width or height) of the smallest GUI item included in the scroll target section
  • V may be the scroll speed
  • the processor 120 identifies whether the minimum motion required time is less than a preset perceivable motion time (S820).
  • the preset perceivable motion time is a value obtained based on existing research and may be, for example, 100 ms (https://www.nngroup.com/articles/response-times-3-important-limits/, https://www.nngroup.com/articles/animation-duration/).
  • the processor 120 may update the scroll speed based on the perceptible motion time. For example, if the minimum motion required time t is less than 100ms, the scroll speed can be updated to a value of 100ms or more.
  • the processor 120 controls the size of the display 110, the mode of the display 110 (landscape mode or portrait mode), the average size of GUI items included in the scroll section, the number of GUI items by size/ratio, etc.
  • the updated scroll speed can be calculated by taking this into account.
  • FIGS. 9 and 10 are diagrams for explaining a scroll speed update method according to an embodiment.
  • the processor 120 may update the scroll speed in real time in response to context changes. For example, after scrolling starts and ends, the processor 120 may update the scroll speed based on a new GUI item when new scrolling occurs in the same or different direction.
  • the processor 120 selects a plurality of scroll target sections based on the second navigation input. Size information of each second GUI item can be identified (S920).
  • the processor 120 may update the scroll speed based on size information of each of the plurality of second GUI items (S930).
  • a scroll target section may be identified based on the GUI item 1013, and a scroll speed corresponding to the second navigation input may be identified based on the identified target section.
  • the scroll target section is identified based on the GUI item 1014
  • a scroll speed corresponding to the third navigation input may be identified based on the identified target section.
  • the scroll speed is updated based on the GUI items (1015, 1016, 1017, 1018, 1019) with which each navigation input is identified, and scrolling corresponding to each navigation input can be performed based on the updated scroll speed.
  • 11 and 12 are diagrams for explaining a scroll speed update method according to an embodiment.
  • the processor 120 may update the scroll speed by re-identifying the scroll target section based on the update time.
  • the processor 120 identifies whether a plurality of first GUI items included in the scroll target section are updated (S1110).
  • a GUI item included in the scroll target section may be updated based on at least one of real-time loading of the GUI item or looping of the GUI item.
  • looping of GUI items may include a case where an item including the first item in the list is added to the scroll target section after the last item in the list.
  • the processor 120 may re-identify the scroll target section based on the update time (S1120).
  • the processor 120 may update the scroll speed based on size information of each of the plurality of third GUI items included in the re-identified scroll target section (S1130).
  • scrolling may be performed based on the scroll speed identified based on the scroll target section 1210, for example, v1.
  • the processor 120 may update the scroll speed based on that point in time. For example, if the processor 120 identifies the GUI item included in the scroll target section 1220 as updated at time t2 when scrolling has progressed to the GUI item 1221, the processor 120 uses the scroll target section 1220 after the GUI item 1221 as the basis. You can update the scroll speed to v2 with . Accordingly, scrolling after GUI item 1221 can be performed at the updated scroll speed v2.
  • the processor 120 if the processor 120 identifies the GUI item included in the scroll target section 1230 as updated at time t3 when scrolling has progressed to the GUI item 1231, the processor 120 scrolls based on the scroll target section 1230 after the GUI item 1231. Speed can be updated. Accordingly, scrolling after GUI item 1231 can be performed at the updated scroll speed v3.
  • FIG. 13 is a diagram illustrating a method of updating scroll speed according to display size according to an embodiment.
  • the processor 120 may update the scroll speed based on the difference information between the size of the display 110 and the preset size, and the scroll speed.
  • the processor 120 may update the scroll speed based on the difference information between the size of the display 110 and the preset size, and the scroll speed.
  • the physical size of the GUI item may be different depending on the size of the display 110. Accordingly, the perceived speed of scrolling the UI screen becomes faster as the size of the display 110 increases. This is because the physical travel distance for the same amount of time becomes longer.
  • the scroll speed may be corrected based on the size of the display 110.
  • Figure 13 As shown in , when the scroll direction and the screen direction are the same horizontal direction, the screen width 1310 with a central viewing angle of 30 degrees at a viewing distance of 3 m can be defined as the 'reference screen width'.
  • the processor 120 may correct the scroll speed to be relatively slow when the target screen width is larger than the reference screen width. This is to allow for better reception of information by allowing time for perception even when a scroll section outside the central viewing angle occurs. If the scroll direction and screen direction are vertical, the scroll speed can be corrected in the same way, but based on the target screen height and reference screen height.
  • the R value representing the ratio of the target screen width to the reference screen width can be defined as Equation 3 below.
  • the corrected scroll speed can be calculated as shown in Equation 4 below.
  • V is the scroll speed
  • R may be a value calculated in Equation 3.
  • the above-described embodiment is only an example of correcting the scroll speed based on the screen width, and the scroll speed can be corrected in various ways.
  • the processor 120 may obtain a corrected scroll speed by multiplying the scroll speed by a predefined weight according to the R value.
  • predefined weights according to the R value may be stored in the form of a lookup table or received from an external device.
  • FIG. 14 is a diagram illustrating a method of updating scroll speed according to a display direction according to an embodiment.
  • the display 110 may be implemented as a rotatable display. For example, when a 16:9 screen is rotated vertically, it becomes 9:16 and the horizontal width of the screen becomes narrower. In this case, when scrolling the UI screen, the time that GUI items included in the list are exposed on the screen is reduced, making it difficult to understand information. Accordingly, when the display 110 is rotated from landscape mode to portrait mode, the scroll speed can be corrected to be relatively slower as the screen width is reduced.
  • the amount of decrease in speed may be predefined or may be determined by applying a preset weight.
  • the preset weight may be a value defined based on the screen's width/height ratio, screen size, difference in size of GUI items in landscape mode and portrait mode, etc.
  • the processor 120 displays a plurality of GUI items by moving them in one direction based on the scroll speed calculated according to the navigation input while the display 110 is in landscape mode. can do.
  • the processor 120 corrects the scroll speed based on the width information of the display 110 in the portrait mode and based on the corrected scroll speed.
  • Multiple GUI items can be displayed by moving them in one direction.
  • the preset event may be a user command, content ratio change, etc.
  • the processor 140 may calculate the corrected scroll speed in portrait mode by multiplying the scroll speed in landscape mode by a preset weight.
  • weights according to the ratio of the screen width in landscape mode and the screen width in portrait mode may be stored in the form of a lookup table or received from an external device.
  • the methods according to various embodiments of the present disclosure described above may be implemented in the form of applications that can be installed on existing electronic devices.
  • at least some of the methods according to various embodiments of the present disclosure described above may be performed using a deep learning-based artificial intelligence model, that is, a learning network model.
  • the various embodiments described above may be implemented as software including instructions stored in a machine-readable storage media (e.g., a computer).
  • the device is a device capable of calling instructions stored from a storage medium and operating according to the called instructions, and may include an electronic device (eg, electronic device A) according to the disclosed embodiments.
  • the processor may perform the function corresponding to the instruction directly or using other components under the control of the processor.
  • Instructions may contain code generated or executed by a compiler or interpreter.
  • a storage medium that can be read by a device may be provided in the form of a non-transitory storage medium.
  • 'non-transitory' only means that the storage medium does not contain signals and is tangible, and does not distinguish whether the data is stored semi-permanently or temporarily in the storage medium.
  • the method according to the various embodiments described above may be included and provided in a computer program product.
  • Computer program products are commodities and can be traded between sellers and buyers.
  • the computer program product may be distributed on a machine-readable storage medium (e.g. compact disc read only memory (CD-ROM)) or online through an application store (e.g. Play StoreTM).
  • an application store e.g. Play StoreTM
  • at least a portion of the computer program product may be at least temporarily stored or created temporarily in a storage medium such as the memory of a manufacturer's server, an application store's server, or a relay server.
  • each component e.g., module or program
  • each component may be composed of a single or multiple entities, and some of the sub-components described above may be omitted, or other sub-components may be omitted. Additional components may be included in various embodiments. Alternatively or additionally, some components (e.g., modules or programs) may be integrated into a single entity and perform the same or similar functions performed by each corresponding component prior to integration. According to various embodiments, operations performed by a module, program, or other component may be executed sequentially, in parallel, iteratively, or heuristically, or at least some operations may be executed in a different order, omitted, or other operations may be added. You can.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

전자 장치에 있어서, 디스플레이 및 복수의 GUI(Graphic User Interface) 아이템 및 복수의 GUI 아이템 중 어느 하나의 GUI 아이템에 위치한 포커스 GUI를 포함하는 UI(User Interface) 화면을 표시하도록 디스플레이를 제어하고, 기 설정된 네비게이션 입력에 따라 복수의 GUI 아이템을 일 방향으로 이동시켜 표시하도록 디스플레이를 제어하는 하나 이상의 프로세서를 포함한다. 하나 이상의 프로세서는, 기 설정된 네비게이션 입력에 기초하여 스크롤 대상 구간에 포함된 복수의 제1 GUI 아이템 각각의 크기 정보를 식별하고, 복수의 제1 GUI 아이템 각각의 크기 정보에 기초하여 스크롤 속도를 식별하고, 스크롤 속도에 기초하여 복수의 GUI 아이템을 일 방향으로 이동시켜 표시하도록 디스플레이를 제어할 수 있다.

Description

전자 장치 및 그 UI 제공 방법
개시는 전자 장치 및 그 UI 제공 방법에 관한 것으로, 더욱 상세하게는 네비게이션 입력에 기초하여 다양한 크기의 GUI 아이템을 포함하는 UI 화면을 제어하는 전자 장치 및 그 UI 제공 방법에 관한 것이다.
전자 기술의 발달에 힘입어 다양한 유형의 전자 장치가 개발되고 있다. 특히, 더 새롭고 다양한 기능을 원하는 사용자의 니즈(needs)에 부합하기 위하여 TV와 같은 디스플레이 장치는 다양한 컨텐츠를 제공하고 있다.
TV에서 제공되는 컨텐츠의 타입이 다양해지고 컨텐츠의 수가 점점 증가함에 따라 사용자가 원하는 컨텐츠를 탐색하기 위한 네비게이션 기능의 중요성이 증대되고 있다.
이상과 같은 목적을 달성하기 위한 본 개시의 일 실시 예에 따른 전자 장치는, 디스플레이 및, 복수의 GUI(Graphic User Interface) 아이템 및 상기 복수의 GUI 아이템 중 어느 하나의 GUI 아이템에 위치한 포커스 GUI를 포함하는 UI(User Interface) 화면을 표시하도록 상기 디스플레이를 제어하고, 기 설정된 네비게이션 입력에 따라 상기 복수의 GUI 아이템을 일 방향으로 이동시켜 표시하도록 상기 디스플레이를 제어하는 하나 이상의 프로세서를 포함한다. 상기 하나 이상의 프로세서는, 상기 기 설정된 네비게이션 입력에 기초하여 스크롤 대상 구간에 포함된 복수의 제1 GUI 아이템 각각의 크기 정보를 식별하고, 상기 복수의 제1 GUI 아이템 각각의 크기 정보에 기초하여 스크롤 속도를 식별하고, 상기 스크롤 속도에 기초하여 상기 복수의 GUI 아이템을 일 방향으로 이동시켜 표시하도록 상기 디스플레이를 제어할 수 있다.
또한, 상기 하나 이상의 프로세서는, 상기 기 설정된 네비게이션 입력에 대응되는 스크롤 방향이 가로 방향인 경우, 상기 복수의 제1 GUI 아이템 각각의 너비 정보에 기초하여 상기 스크롤 속도를 식별하고, 상기 기 설정된 네비게이션 입력에 대응되는 스크롤 방향이 세로 방향인 경우, 상기 복수의 제1 GUI 아이템 각각의 높이 정보에 기초하여 상기 스크롤 속도를 식별할 수 있다.
또한, 상기 하나 이상의 프로세서는, 상기 복수의 제1 GUI 아이템 중 가장 작은 GUI 아이템의 크기를 상기 스크롤 속도로 나눈 값에 기초하여 최소 모션 필요 시간을 식별하고, 상기 최소 모션 필요 시간이 기 설정된 인지 가능한 모션 시간 미만인 경우, 상기 스크롤 속도를 상기 인지 가능한 모션 시간에 기초하여 업데이트할 수 있다.
또한, 상기 하나 이상의 프로세서는, 제1 네비게이션 입력에 기초한 스크롤이 종료된 후, 제2 네비게이션 입력이 식별되면, 상기 제2 네비게이션 입력에 기초하여 스크롤 대상 구간에 포함된 복수의 제2 GUI 아이템 각각의 크기 정보를 식별하고, 상기 복수의 제2 GUI 아이템 각각의 크기 정보에 기초하여 상기 스크롤 속도를 업데이트할 수 있다.
또한, 상기 하나 이상의 프로세서는, 상기 기 설정된 네비게이션 입력에 기초한 스크롤이 진행되는 동안, GUI 아이템의 실시간 로딩(loading) 또는 GUI 아이템의 루핑(looping) 중 적어도 하나에 기초하여 상기 스크롤 대상 구간에 포함된 복수의 제1 GUI 아이템이 업데이트되는 경우, 업데이트 시점에 기초하여 스크롤 대상 구간을 재식별하고, 상기 재식별된 스크롤 대상 구간에 포함된 복수의 제3 GUI 아이템 각각의 크기 정보에 기초하여 상기 스크롤 속도를 업데이트할 수 있다.
또한, 상기 하나 이상의 프로세서는, 상기 디스플레이의 크기가 기 설정된 크기 이상인 경우, 상기 디스플레이의 크기 및 상기 기 설정된 크기 간 차이 정보, 및 상기 스크롤 속도에 기초하여 상기 스크롤 속도를 업데이트할 수 있다.
또한, 상기 디스플레이는, 회전 가능한 디스플레이로 구현될 수 있다. 상기 하나 이상의 프로세서는, 상기 디스플레이가 가로 모드에 있는 동안 상기 스크롤 속도에 기초하여 상기 복수의 GUI 아이템을 일 방향으로 이동시켜 표시하도록 상기 디스플레이를 제어하고, 상기 디스플레이가 세로 모드로 회전되면, 상기 세로 모드에서 상기 디스플레이의 폭 정보에 기초하여 상기 스크롤 속도를 감소시켜 상기 스크롤 속도를 보정하고, 상기 디스플레이가 상기 세로 모드에 있는 동안 상기 보정된 스크롤 속도에 기초하여 상기 복수의 GUI 아이템을 일 방향으로 이동시켜 표시하도록 상기 디스플레이를 제어할 수 있다.
또한, 상기 하나 이상의 프로세서는, 상기 스크롤 속도에 기초하여 상기 복수의 GUI 아이템에 대응되는 복수의 제1 픽셀 및 상기 복수의 GUI 아이템 사이의 여분 영역에 대응되는 복수의 제2 픽셀을 일정한 속도로 일 방향으로 이동시켜 표시하도록 상기 디스플레이를 제어할 수 있다.
또한, 상기 하나 이상의 프로세서는,상기 복수의 제1 GUI 아이템 각각의 크기 정보 및 상기 복수의 제1 GUI 아이템 각각에 대응되는 기본 스크롤 속도에 기초하여 상기 스크롤 속도를 식별할 수 있다. 상기 복수의 제1 GUI 아이템 각각의 상기 기본 스크롤 속도 정보는, 상기 복수의 제1 GUI 아이템 각각에 동일하게 할당된 스크롤 시간 및 상기 기 설정된 네비게이션 입력의 스크롤 방향으로 상기 복수의 제1 GUI 아이템 각각에 포함된 픽셀 수에 기초하여 산출된 속도 정보일 수 있다.
일 실시 예에 따른 전자 장치의 UI 제공 방법은, 복수의 GUI(Graphic User Interface) 아이템 및 상기 복수의 GUI 아이템 중 어느 하나의 GUI 아이템에 위치한 포커스 GUI를 포함하는 UI(User Interface) 화면을 표시하는 단계, 기 설정된 네비게이션 입력에 기초하여 스크롤 대상 구간에 포함된 복수의 제1 GUI 아이템 각각의 크기 정보를 식별하는 단계, 상기 복수의 제1 GUI 아이템 각각의 크기 정보에 기초하여 스크롤 속도를 식별하는 단계 및, 상기 스크롤 속도에 기초하여 상기 복수의 GUI 아이템을 일 방향으로 이동시켜 표시하는 단계를 포함할 수 있다.
본 개시의 일 실시 예에 따른 전자 장치의 프로세서에 의해 실행되는 경우 상기 전자 장치가 동작을 수행하도록 하는 컴퓨터 명령을 저장하는 비일시적 컴퓨터 판독 가능 매체에 있어서, 상기 동작은, 복수의 GUI(Graphic User Interface) 아이템 및 상기 복수의 GUI 아이템 중 어느 하나의 GUI 아이템에 위치한 포커스 GUI를 포함하는 UI(User Interface) 화면을 표시하는 단계, 기 설정된 네비게이션 입력에 기초하여 스크롤 대상 구간에 포함된 복수의 제1 GUI 아이템 각각의 크기 정보를 식별하는 단계, 상기 복수의 제1 GUI 아이템 각각의 크기 정보에 기초하여 스크롤 속도를 식별하는 단계 및, 상기 스크롤 속도에 기초하여 상기 복수의 GUI 아이템을 일 방향으로 이동시켜 표시하는 단계를 포함할 수 있다.
도 1은 본 개시의 일 실시 예에 따른 전자 장치의 구현 예를 설명하기 위한 도면이다.
도 2a는 일 실시 예에 따른 전자 장치의 구성을 나타내는 블럭도이다.
도 2b는 본 개시의 일 실시 예에 따른 전자 장치의 일 구현 예의 세부 구성를 나타내는 도면이다.
도 3은 일 실시 예에 따른 GUI 아이템들의 네비게이션 방법을 설명하기 위한 도면이다.
도 4a 내지 도 4c는 일 실시 예에 따른 스크롤 속도의 식별 방법을 설명하기 위한 도면이다.
도 5, 도 6a 내지 도 6c는 일 실시 예에 따른 스크롤 방향에 따른 스크롤 속도 식별 방법을 설명하기 위한 도면들이다.
도 7은 일 실시 예에 따른 스크롤 방향에 따른 스크롤 속도 식별 방법을 설명하기 위한 도면이다.
도 8은 일 실시 예에 따른 인지 특성을 고려한 스크롤 속도 식별 방법을 설명하기 위한 도면이다.
도 9 및 도 10은 일 실시 예에 따른 스크롤 속도 업데이트 방법을 설명하기 위한 도면들이다.
도 11 및 도 12는 일 실시 예에 따른 스크롤 속도 업데이트 방법을 설명하기 위한 도면들이다.
도 13은 일 실시 예에 따른 디스플레이 크기에 따른 스크롤 속도 업데이트 방법을 설명하기 위한 도면이다.
도 14는 일 실시 예에 따른 디스플레이 방향에 따른 스크롤 속도 업데이트 방법을 설명하기 위한 도면이다.
이하에서는 첨부 도면을 참조하여 본 개시를 상세히 설명한다.
본 명세서에서 이용되는 용어에 대해 간략히 설명하고, 본 개시에 대해 구체적으로 설명하기로 한다. 
본 개시의 이용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 이용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 개시의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 이용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 이용될 수 있지만, 구성요소들은 용어들에 의해 한정되어서는 안 된다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 이용된다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "구성되다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
A 또는 B 중 적어도 하나라는 표현은 "A" 또는 "B" 또는 "A 및 B" 중 어느 하나를 나타내는 것으로 이해되어야 한다.
본 개시에서 "모듈" 혹은 "부"는 적어도 하나의 기능이나 동작을 수행하며, 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의 "모듈" 혹은 복수의 "부"는 특정한 하드웨어로 구현될 필요가 있는 "모듈" 혹은 "부"를 제외하고는 적어도 하나의 모듈로 일체화되어 하나 이상의 프로세서(미도시)로 구현될 수 있다.
아래에서는 첨부한 도면을 참고하여 본 개시의 실시 예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 그리고 도면에서 본 개시를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
도 1은 본 개시의 일 실시 예에 따른 전자 장치의 구현 예를 설명하기 위한 도면이다.
도 1에 따르면, 전자 장치(100)는 원격 제어 장치(200)에 의해 원격 제어 가능한 디스플레이 장치로 구현될 수 있다. 일 예에 따라 전자 장치(100)는 TV, 태블릿 PC, 이동 전화기, 데스크탑 PC, 랩탑 PC, PDA, PMP(portable multimedia player), LFD(large format display), Digital Signage(디지털 간판), DID(Digital Information Display), 비디오 월(video wall), 프로젝터, 냉장고, 에어컨, 공기 청정기, 의료 기기 등과 같이 디스플레이 기능을 가지는 장치라면 한정되지 않고 적용 가능하다. 여기서, 원격 제어 장치(200)는 리모컨으로 구현될 수 있으나, 반드시 이에 한정되는 것은 아니며 스마트폰 등과 같이 어플리케이션을 이용하여 원격 제어가 가능한 장치로 구현될 수도 있다.
일 예에 따르면, 전자 장치(100)는 복수의 GUI(Graphic User Interface) 아이템(11, 12, 13, 14, 15, 16, 17, 18)을 포함하는 UI(User Interface) 화면을 제공하고 원격 제어 장치(200)로부터 수신된 네비게이션 입력에 기초하여 복수의 GUI 아이템 간의 네비게이션 동작을 제어할 수 있다. 다른 예에 따르면, 전자 장치(100)는 컨텐츠 재생 화면을 제공하고, 원격 제어 장치(200)로부터 수신된 네비게이션 입력에 기초하여 컨텐츠의 재생 구간을 조정할 수 있다. 그 밖에 전자 장치(100)는 원격 제어 장치(200)로부터 수신된 네비게이션 입력에 기초하여 제공되는 화면의 타입/기능에 따라 다양한 제어 기능을 수행할 수 있다.
일 실시 예에 따르면, 전자 장치(100)는 다양한 크기 및/또는 다양한 비율을 가지는 복수의 GUI 아이템(11, 12, 13, 14, 15, 16, 17, 18) 및 이들 중 어느 하나의 GUI 아이템(11)에 위치한 포커스 아이템(20)을 포함하는 UI 화면을 제공할 수 있다. 이 경우, 전자 장치(100)는 원격 제어 장치(200)로부터 수신된 기 설정된 네비게이션 입력, 예를 들어, 롱 프레스(long press) 입력에 기초하여 복수의 GUI 아이템(11, 12, 13, 14, 15, 16, 17, 18)을 일 방향으로 이동시켜 표시할 수 있다. 이 경우 도 1에 도시된 바와 같이 포커스 아이템(20)의 표시 위치는 고정되고 복수의 GUI 아이템(11, 12, 13, 14, 15, 16, 17, 18)이 이동함에 따라 포커스 아이템(20)에 GUI 아이템(11)에 인접한 다른 GUI 아이템(12)이 위치되고, UI 화면 상에 제공되지 않은 새로운 GUI 아이템(19)이 UI 화면에 제공될 수 있다.
상술한 실시 예에서 각 GUI 아이템 마다 동일한 스크롤 시간(예를 들어, 120ms)이 할당되는 경우, 크기가 상대적으로 큰 GUI 아이템은 빠른 속도로 스크롤되고, 크기가 상대적으로 작은 GUI 아이템은 느린 속도로 스크롤되어 표시되게 된다. 이 경우, GUI 아이템의 크기에 따라 속도가 변하게 되므로 구간 별로 끊기는 모션이 발생되어 순간적으로 렉이 생겨 느려진 것처럼 인식되거나 전반적인 네비게이션 감성이 부족하게 인식될 수 있게 된다.
이에 따라 이하에서는 다양한 크기 및/또는 다양한 비율을 가지는 복수의 GUI 아이템을 포함하는 UI에서 스크롤 속도를 일정하게 유지하는 다양한 실시 예에 대해 자세히 설명하도록 한다.
도 2a는 일 실시 예에 따른 전자 장치의 구성을 나타내는 블럭도이다.
도 2a에 따르면 전자 장치(100)는 디스플레이(110) 및 프로세서(120)를 포함한다.
디스플레이(110)는 자발광 소자를 포함하는 디스플레이 또는 비자발광 소자 및 백라이트를 포함하는 디스플레이로 구현될 수 있다. 예를 들어, LCD(Liquid Crystal Display), OLED(Organic Light Emitting Diodes) 디스플레이, LED(Light Emitting Diodes), PDP(Plasma Display Panel), QLED(Quantum dot light-emitting diodes) 등과 같은 다양한 형태의 디스플레이로 구현될 수 있다. 디스플레이(160) 내에는 a-si TFT, LTPS(low temperature poly silicon) TFT, OTFT(organic TFT) 등과 같은 형태로 구현될 수 있는 구동 회로, 백라이트 유닛 등도 함께 포함될 수 있다. 한편, 디스플레이(110)는 터치 센서와 결합된 터치 스크린, 플렉시블 디스플레이(flexible display), 롤러블 디스플레이(rollable display), 3차원 디스플레이(3D display), 복수의 디스플레이 모듈이 물리적으로 연결된 디스플레이 등으로 구현될 수 있다.
하나 이상의 프로세서(120)(이하, 프로세서)는 디스플레이(110)와 전기적으로 연결되어 전자 장치(100)의 전반적인 동작을 제어한다. 하나 이상의 프로세서(120)는 하나 또는 복수의 프로세서로 구성될 수 있다. 여기서, 하나 또는 복수의 프로세서는 적어도 하나의 소프트웨어 또는 적어도 하나의 하드웨어 또는, 적어도 하나의 소프트웨어 및 적어도 하나의 하드웨어의 조합으로 구현될 수 있다. 일 예에 따라 하나 이상의 프로세서에 해당하는 소프트웨어 또는 하드웨어 로직이 하나의 칩 내에 구현될 수 있다. 다른 예에 따라 복수의 프로세서 중 일부에 해당하는 소프트웨어 또는 하드웨어 로직은 하나의 칩 내에, 나머지에 해당하는 소프트웨어 또는 하드웨어 로직은 다른 칩 내에 구현될 수 있다.
구체적으로, 프로세서(120)는 메모리(미도시)에 저장된 적어도 하나의 인스트럭션(instruction)을 실행함으로써, 본 개시의 다양한 실시 예에 따른 전자 장치(100)의 동작을 수행할 수 있다.
일 실시 예에 따라 프로세서(120)는 디지털 영상 신호를 처리하는 디지털 시그널 프로세서(digital signal processor(DSP), 마이크로 프로세서(microprocessor), GPU(Graphics Processing Unit), AI(Artificial Intelligence) 프로세서, NPU (Neural Processing Unit), TCON(Time controller)으로 구현될 수 있다. 다만, 이에 한정되는 것은 아니며, 중앙처리장치(central processing unit(CPU)), MCU(Micro Controller Unit), MPU(micro processing unit), 컨트롤러(controller), 어플리케이션 프로세서(application processor(AP)), 또는 커뮤니케이션 프로세서(communication processor(CP)), ARM 프로세서 중 하나 또는 그 이상을 포함하거나, 해당 용어로 정의될 수 있다. 또한, 프로세서(120)는 프로세싱 알고리즘이 내장된 SoC(System on Chip), LSI(large scale integration)로 구현될 수도 있고, ASIC(application specific integrated circuit), FPGA(Field Programmable gate array) 형태로 구현될 수도 있다.
일 실시 예에 따르면, 프로세서(120)는 복수의 GUI(Graphic User Interface) 아이템을 포함하는 UI 화면, 컨텐츠 재생 화면 등 원격 제어 장치(200)에 의해 제어 가능한 다양한 타입의 화면을 표시하도록 디스플레이(110)를 제어할 수 있다.
일 예에 따라 프로세서(120)는 복수의 GUI 아이템 및 복수의 GUI 아이템 중 어느 하나의 GUI 아이템에 위치한 포커스 GUI를 포함하는 UI(User Interface) 화면을 표시하도록 디스플레이(110)를 제어할 수 있다. 여기서, 복수의 GUI 아이템은 수평 방향, 수직 방향, 대각선 방향 등 특정 방향으로 배열되며 특정 형상(예를 들어, 사각형, 둥근 사각형, 원형, 마름모 등)일 수 있다. 포커스 GUI는 GUI 아이템의 테두리에 하이라이트된 형태일 수 있으나, 반드시 이에 한정되는 것은 아니며 GUI 아이템 전체에 하이라이트되거나 일부 테두리에 하이라이트될 수도 있다.
일 실시 예에 따르면, 프로세서(120)는 다양한 크기 및/또는 다양한 비율을 가지는 복수의 GUI 아이템 및 이들 중 어느 하나의 GUI 아이템에 위치한 포커스 아이템을 포함하는 UI 화면을 제공할 수 있다. 이 경우, 전자 장치(100)는 원격 제어 장치(200)로부터 수신된 기 설정된 네비게이션 입력, 예를 들어, 롱 프레스(long press) 입력에 기초하여 포커스 아이템의 위치는 고정시키고 복수의 GUI 아이템을 일 방향으로 이동시켜 표시할 수 있다.
도 2b는 본 개시의 일 실시 예에 따른 전자 장치의 일 구현 예의 세부 구성를 나타내는 도면이다.
도 2b에 따르면, 전자 장치(100')는 디스플레이(110), 프로세서(120), 메모리(130), 통신 인터페이스(140), 사용자 인터페이스(150), 출력부(160) 및 카메라(170)를 포함한다. 도 2b에 도시된 구성 중 도 2a에 도시된 구성과 중복되는 구성에 대해서는 자세한 설명을 생략하도록 한다.
메모리(130)는 프로세서(120)와 전기적으로 연결되며, 본 개시의 다양한 실시 예를 위해 필요한 데이터를 저장할 수 있다. 메모리(130)는 데이터 저장 용도에 따라 전자 장치(100')에 임베디드된 메모리 형태로 구현되거나, 전자 장치(100)에 탈부착이 가능한 메모리 형태로 구현될 수도 있다. 예를 들어, 전자 장치(100)의 구동을 위한 데이터의 경우 전자 장치(100)에 임베디드된 메모리에 저장되고, 전자 장치(100')의 확장 기능을 위한 데이터의 경우 전자 장치(100')에 탈부착이 가능한 메모리에 저장될 수 있다. 한편, 전자 장치(100')에 임베디드된 메모리의 경우 휘발성 메모리(예: DRAM(dynamic RAM), SRAM(static RAM), 또는 SDRAM(synchronous dynamic RAM) 등), 비휘발성 메모리(non-volatile Memory)(예: 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 등), 하드 드라이브, 또는 솔리드 스테이트 드라이브(solid state drive(SSD)) 중 적어도 하나로 구현될 수 있다. 또한, 전자 장치(100')에 탈부착이 가능한 메모리의 경우 메모리 카드(예를 들어, CF(compact flash), SD(secure digital), Micro-SD(micro secure digital), Mini-SD(mini secure digital), xD(extreme digital), MMC(multi-media card) 등), USB 포트에 연결가능한 외부 메모리(예를 들어, USB 메모리) 등과 같은 형태로 구현될 수 있다.
일 예에 따라 메모리(130)는 전자 장치(100')를 제어하기 위한 적어도 하나의 인스트럭션(instruction) 또는 인스트럭션들을 포함하는 컴퓨터 프로그램을 저장할 수 있다.
일 예에 따라 메모리(130)는 외부 장치(예를 들어, 소스 장치), 외부 저장 매체(예를 들어, USB), 외부 서버(예를 들어 웹 하드) 등으로부터 수신된 영상, 즉 입력 영상, 다양한 데이터, 정보 등을 저장할 수 있다.
일 예에 따라 메모리(130)는 다양한 크기 및/또는 비율(이하, 크기/비율이라 함)의 GUI 아이템에 할당된 기본 스크롤 속도 정보를 저장할 수 있다. 예를 들어 GUI 아이템의 비율 별로 상이한 기본 스크롤 속도가 저장되어 있을 수 있다. 또한, 동일한 비율이더라도 상이한 크기의 GUI 아이템 별로 상이한 기본 스크롤 속도가 저장되어 있을 수 있다. 여기서, GUI 아이템의 비율은 사각형 형태의 GUI 아이템의 가로/세로 비율일 수 있다. 다만, GUI 아이템이 원형, 마름모 등의 형태일 수도 있으며 이 경우에도 GUI 아이템의 비율은 가로/세로 비율일 수 있다.
일 실시 예에 따르면, 메모리(130)는 본 개시에 따른 다양한 동작들에서 생성되는 데이터를 저장하는 단일 메모리로 구현될 수 있다. 다만, 다른 실시 예에 따르면, 메모리(130)는 상이한 타입의 데이터를 각각 저장하거나, 상이한 단계에서 생성되는 데이터를 각각 저장하는 복수의 메모리를 포함하도록 구현될 수도 있다.
상술한 실시 예에서는 다양한 데이터가 프로세서(120)의 외부 메모리(130)에 저장되는 것으로 설명하였으나, 상술한 데이터 중 적어도 일부는 전자 장치(100') 또는 프로세서(120) 중 적어도 하나의 구현 예에 따라 프로세서(120) 내부 메모리에 저장될 수도 있다.
통신 인터페이스(140)는 외부 장치와 통신을 수행하는 구성 요소일 수 있다. 예를 들어 통신 인터페이스(140)는 AP 기반의 Wi-Fi(와이파이, Wireless LAN 네트워크), 블루투스(Bluetooth), 지그비(Zigbee), 유/무선 LAN(Local Area Network), WAN(Wide Area Network), 이더넷(Ethernet), IEEE 1394, HDMI(High-Definition Multimedia Interface), USB(Universal Serial Bus), MHL(Mobile High-Definition Link), AES/EBU(Audio Engineering Society/ European Broadcasting Union), 옵티컬(Optical), 코액셜(Coaxial) 등과 같은 통신 방식을 통해 외부 장치(예를 들어, 소스 장치), 외부 저장 매체(예를 들어, USB 메모리), 외부 서버(예를 들어 웹 하드) 등으로부터 스트리밍 또는 다운로드 방식으로 영상 신호를 입력받을 수 있다. 여기서, 영상 신호는 SD(Standard Definition), HD(High Definition), Full HD 또는 Ultra HD 영상 중 어느 하나의 디지털 영상 신호가 될 수 있으나 이에 한정되는 것은 아니다. 일 실시 예에 따라 통신 인터페이스(140)는 리모콘 송수신부로 구현되어 원격 제어 장치(200)로부터 전송되는 원격 제어 신호를 수신할 수 있다. 리모콘 송수신부는 적외선 통신, 블루투스 통신 또는 와이파이 통신 중 적어도 하나의 통신 방식을 통해 외부 원격 제어 장치(200)로부터 리모콘 신호를 수신하거나, 리모콘 신호를 송신할 수 있다.
사용자 인터페이스(150)는 버튼, 터치 패드, 마우스 및 키보드와 같은 장치로 구현되거나, 상술한 디스플레이 기능 및 조작 입력 기능도 함께 수행 가능한 터치 스크린으로 구현될 수 있다.
출력부(160)는 음향 신호를 출력한다. 예를 들어, 출력부(160)는 프로세서(120)에서 처리된 디지털 음향 신호를 아날로그 음향 신호로 변환하고 증폭하여 출력할 수 있다. 예를 들어, 출력부(160)는 적어도 하나의 채널을 출력할 수 있는, 적어도 하나의 스피커 유닛, D/A 컨버터, 오디오 앰프(audio amplifier) 등을 포함할 수 있다. 일 예에 따라 출력부(160)는 다양한 멀티 채널 음향 신호를 출력하도록 구현될 수 있다. 이 경우, 프로세서(120)는 입력 영상의 인핸스 처리에 대응되도록 입력된 음향 신호를 인핸스 처리하여 출력하도록 출력부(160)를 제어할 수 있다. 예를 들어, 프로세서(120)는 입력된 2채널 음향 신호를 가상의 멀티 채널(예를 들어, 5.1 채널) 음향 신호로 변환하거나, 전자 장치(100')가 놓인 위치를 인식해 공간에 최적화된 입체 음향 신호로 처리하거나, 입력 영상의 타입(예를 들어 컨텐츠 장르)에 따라 최적화된 음향 신호를 제공할 수 있다. 일 예에 따라 프로세서(120)는 다양한 실시 예에 따른 UI 피드백에 대응되는 오디오 피드백을 출력하도록 출력부(160)를 제어할 수 있다.
카메라(170)는 기 설정된 이벤트에 따라 턴 온 되어 촬영을 수행할 수 있다. 카메라(170)는 촬상된 영상을 전기적인 신호로 변환하고 변환된 신호에 기초하여 영상 데이터를 생성할 수 있다. 예를 들어, 피사체는 반도체 광학소자(CCD; Charge Coupled Device)를 통해 전기적인 영상 신호로 변환되고, 이와 같이 변환된 영상 신호는 증폭 및 디지털 신호로 변환된 후 신호 처리될 수 있다. 다만, 카메라(170)는 전자 장치(100')의 구현 예에 따라 포함되지 않는 것도 가능하다.
전자 장치 (100')는 구현 예에 따라 튜너 및 복조부를 추가적으로 포함할 수 있다. 튜너(미도시)는 안테나를 통해 수신되는 RF(Radio Frequency) 방송 신호 중 사용자에 의해 선택된 채널 또는 기 저장된 모든 채널을 튜닝하여 RF 방송 신호를 수신할 수 있다. 복조부(미도시)는 튜너에서 변환된 디지털 IF 신호(DIF)를 수신하여 복조하고, 채널 복호화 등을 수행할 수도 있다.
도 3은 일 실시 예에 따른 GUI 아이템들의 네비게이션 방법을 설명하기 위한 도면이다.
도 3에 따르면, 프로세서(120)는 복수의 GUI 아이템 및 복수의 GUI 아이템 중 어느 하나의 GUI 아이템에 위치한 포커스 GUI를 포함하는 UI 화면을 표시할 수 있다(S310). 일 예에 따라 복수의 GUI 아이템 중 적어도 일부 GUI 아이템의 비율 및/또는 크기는 상이할 수 있다.
프로세서(120)는 기 설정된 네비게이션 입력이 식별되면(S320:Y), 스크롤 대상 구간에 포함된 복수의 제1 GUI 아이템 각각의 크기 정보를 식별할 수 있다(S330). 여기서, 크기 정보는 너비 또는 높이 중 적어도 하나의 정보 또는 비율 정보 중 적어도 하나를 포함할 수 있다.
일 예에 따라 프로세서(120)는 기 설정된 네비게이션 입력은 복수의 GUI 아이템을 연속적으로 이동시키기 위한 사용자 입력에 대응될 수 있다. 예를 들어, 기 설정된 네비게이션 입력은 원격 제어 장치(200)에서 수신된 롱 프레스 입력일 수 있으나, 이에 한정되는 것은 아니다. 예를 들어, 기 설정된 네비게이션 입력은, 휠 입력 장치에서 수신된 연속키 입력이거나, 이와 동일/유사한 사용자 입력일 수 있다. 여기서, 연속키 입력이란, 휠 입력 장치에서 임계 속도 이상으로 임계 개수 이상의 틱 입력이 발생되는 입력일 있다. 틱 입력은, 휠 입력을 수신하는 휠 버튼 또는 터치 패널 중 적어도 하나에서 기본 조작 단위에 대응되는 입력일 수 있다. 휠 입력 장치가 하드웨어로 구현되는 경우 틱 입력은 하드웨어에서 인식할 수 있는 최소 단위로, 물리적으로 기구가 1 칸 이동하는 것을 의미할 수 있다. 휠 입력 장치가 소프트웨어로 구현되는 경우 소프트웨어에서 정의한 최소 이동 단위가 될 수 있다. 여기서, 휠 입력 장치는 원격 제어 장치(200)에 구비될 수 있으나, 전자 장치(100)에 구비되는 것도 가능하다.
일 예에 따라 프로세서(120)는 네비게이션 입력의 방향에 기초하여 스크롤 대상 구간에 포함된 복수의 제1 GUI 아이템을 식별할 수 있다. 예를 들어, 네비게이션 입력의 방향이 우측 방향인 경우 우측 방향으로 나열된 복수의 제1 GUI 아이템(UI 화면에 표시되지 않았으나 우측 방향으로 리스트 상에 포함된 GUI 아이템들)이 모두 스크롤 대상 구간에 포함되거나, 우측 방향으로 현재 UI 화면에 표시된 복수의 제1 GUI 아이템들이 스크롤 대상 구간에 포함될 수 있다. 다만, 이에 한정되는 것은 아니며, 우측 방향으로 나열된 복수의 제1 GUI 아이템들 중 현재 UI 화면에 표시된 복수의 제1 GUI 아이템의 개수의 N 배에 해당하는 GUI 아이템들이 스크롤 대상 구간에 포함될 수도 있다. 그 밖에 스크롤 대상 구간은 다양한 방식으로 결정될 수 있다.
이어서, 프로세서(120)는 복수의 제1 GUI 아이템 각각의 크기 정보에 기초하여 스크롤 속도를 식별할 수 있다(S340). 예를 들어, 프로세서(120)는 복수의 제1 GUI 아이템의 각각의 크기 정보 및 기본 스크롤 속도 정보에 기초하여 스크롤 속도를 식별할 수 있다. 예를 들어, 프로세서(120)는 복수의 제1 GUI 아이템 각각의 크기 정보 및 기 정의된 시간 정보에 기초하여 스크롤 속도를 식별할 수 있다. 예를 들어, 프로세서(120)는 복수의 제1 GUI 아이템 각각의 크기 정보 및 가중치 정보에 기초하여 스크롤 속도를 식별할 수 있다. 그 밖에 스크롤 속도는 다양한 방법으로식별될 수 있으며 자세한 방법에 대해서는 후술하도록 한다.
이 후, 프로세서(120)는 스크롤 속도에 기초하여 복수의 GUI 아이템을 일 방향으로 이동시켜 표시하도록 디스플레이(110)를 제어할 수 있다(S350).
도 4a 내지 도 4c는 일 실시 예에 따른 스크롤 속도의 식별 방법을 설명하기 위한 도면들이다.
일 실시 예에 따라 도 4a에 도시된 바와 같이 UI 화면 상에 표시된 특정 GUI 아이템(421)에 포커스 GUI(20)가 위치된 상태에서 우측 방향의 네비게이션 입력이 식별되고 복수의 GUI 아이템(421 내지 427)이 스크롤 대상 구간(420)으로 식별된 경우를 상정하도록 한다. 여기서, 410 구간은 이미 스크롤이 진행된 이전 스크롤 구간일 수 있다.
일 실시 예에 따라 프로세서(120)는 복수의 제1 GUI 아이템 각각의 크기 정보 및 복수의 제1 GUI 아이템 각각에 대응되는 기본 스크롤 속도 정보에 기초하여 스크롤 속도를 식별할 수 있다. 일 예에 따라 제1 GUI 아이템의 기본 스크롤 속도는 제1 GUI 아이템 각각의 비율/크기에 기초하여 기 정의된 속도일 수 있다. 예를 들어, 기본 스크롤 속도는 복수의 제1 GUI 아이템 각각에 동일하게 할당된 스크롤 시간 및 복수의 제1 GUI 아이템 각각의 크기에 기초하여 산출된 속도일 수 있다.
일 예에 따라 동일한 비율의 GUI 아이템의 크기가 동일하고 GUI 아이템의 비율 별로 적정한 기본 스크롤 속도(또는 적정 스크롤 속도)가 정의되어 있는 경우를 상정한다. 예를 들어, 16:9 아이템의 적정 스크롤 속도는 v1, 2:3 아이템의 적정 스크롤 속도는 v2, 1:1 아이템의 적정 스크롤 속도는 v3라 할 수 있다.
이 경우, 스크롤 구간에 총 N개의 아이템이 존재하며 16:9 아이템이 n1개, 2:3 아이템이 n2개, 1:1 아이템이 n3개가 존재한다고 가정하면, 최적 스크롤 속도 V는 각 GUI 아이템의 적정 스크롤 속도 및 각 비율에 해당하는 GUI 아이템의 개수에 기초하여 하기 수학식 1과 같이 산출될 수 있다.
Figure PCTKR2023006788-appb-img-000001
상술한 실시 예에서는 각 GUI 아이템의 기 설정된 적정 속도에 기초하여 스크롤 속도를 산출하는 것으로 설명하였으나 반드시 이에 한정되는 것은 아니다.
일 실시 예에 따라 스크롤 대상 구간의 크기 예를 들어, 스크롤 방향에 대응되는 픽셀들(예를 들어, 가로 방향의 픽셀들)의 개수를 스크롤 시간으로 나누어 스크롤 속도를 산출하는 것도 가능하다. 여기서, 스크롤 시간은 스크롤 대상 구간의 크기(또는 길이) 또는 스크롤 대상 구간에 포함된 GUI 아이템의 개수에 따라 기 정의된 시간일 수 있다. 예를 들어, 스크롤 속도는 시간 단 픽셀 개수로 산출될 수 있다.
일 예에 따라 도 4b에 도시된 바와 같이 식별된 복수의 GUI 아이템(421 내지 427) 각각의 크기(w21, w22, w23, w24, w26, w27)에 기초하여 스크롤 대상 구간(420)의 크기(또는 길이)를 산출하고 산출된 크기를 기 정의된 스크롤 시간으로 나누어 스크롤 속도를 산출할 수 있다. 예를 들어 스크롤 대상 구간(420)의 크기는 픽셀 단위의 길이로 산출될 수 있다. 여기서, 복수의 GUI 아이템(421 내지 427) 사이의 여분 영역이 일정한 경우 해당 영역의 길이에 개수를 곱한 값을 복수의 GUI 아이템(421 내지 427) 크기에 더하여 값을 스크롤 대상 구간(420)의 크기(또는 길이)를 산출할 수 있다. 기 정의된 스크롤 시간은 스크롤 대상 구간의 크기 또는 스크롤 대상 구간에 포함된 GUI 아이템의 개수에 따라 결정된 시간일 수 있다.
일 예에 따라 도 4c에 도시된 바와 같이 복수의 GUI 아이템(431 내지 437) 및 복수의 GUI 아이템(431 내지 437) 사이의 여분 영역의 크기(w31, w32, w33, w34, w36, w37)에 기초하여 스크롤 대상 구간(420)의 크기, 예를 들어 픽셀 단위 길이를 산출하고, 산출된 크기를 기 정의된 스크롤 시간으로 나누어 스크롤 속도를 산출할 수 있다.
일 예에 따라 수학식 1을 도 4c의 실시 예에 적용하는 경우, 각 여분 영역의 중심을 기준으로 각 여분 영역을 구분하여 좌측 여분 영역은 이전 GUI 아이템에 우측 여분 영역은 다음 GUI 아이템에 할당할 수 있다. 예를 들어, w31에 해당하는 픽셀 영역에는 GUI 아이템 431에 대응되는 속도를 적용하고, w32에 해당하는 픽셀 영역에는 GUI 아이템 432에 대응되는 속도를 적용하여, 스크롤 대상 구간에 대응되는 스크롤 속도를 산출할 수 있다.
일 예에 따라 프로세서(120)는 스크롤 대상 구간에 포함된 복수의 GUI 아이템의 크기 정보 및 개수 정보를 학습된 신경망 모델에 입력하여 스크롤 속도를 획득할 수 있다. 이 경우, 신경망 모델은 GUI 아이템의 크기, 개수 정보 뿐 아니라, 후술하는 인지 특성, 디스플레이 크기, 디스플레이 모드 등의 정보도 함께 학습하여 스크롤 속도를 출력하도록 학습될 수도 있다. 그 밖의 사용 히스토리 정보, 사용자의 프로필 정보 등도 학습하는 것도 가능하다.
일 예에 따라 프로세서(120)는 스크롤 대상 구간의 길이에 따라 기 정의된 스크롤 속도를 획득할 수도 있다. 예를 들어, 기 정의된 스크롤 속도는 스크롤 대상 구간에 길이 별로 맵핑되어 룩업 테이블 형태로 메모리(130)에 저장되어 있을 수 있다. 이 경우, 동일한 길이의 스크롤 대상 구간이라도 스크롤 대상 구간에 포함된 상이한 크기의 아이템의 비율 또는 개수에 따라 상이한 스크롤 속도가 맵핑되어 있을 수도 있다.
일 예에 따라 프로세서(120)는 프로세서(120)는 기준 스크롤 속도에 스크롤 대상 구간의 길이에 대응되는 기 설정된 가중치를 곱하여 스크롤 속도를 산출할 수도 있다. 이 경우, 동일한 길이의 스크롤 대상 구간이라도 스크롤 대상 구간에 포함된 상이한 크기의 아이템의 비율 또는 개수에 따라 상이한 가중치가 적용될 수도 있다.
일 예에 따라 프로세서(120)는 사용 히스토리 정보, 사용자의 프로필 정보 등을 고려하여 스크롤 정보를 업데이트할 수도 있다. 예를 들어, 스크롤 속도 조정 히스토리, 스크롤 반복 히스토리, 메뉴 조작 속도 등의 사용자 히스토리 정보, 사용자의 나이 등에 기초하여 스크롤 정보를 업데이트할 수도 있다.
일 실시 예에 따라 프로세서(120)는 스크롤 속도에 기초하여 복수의 GUI 아이템에 대응되는 복수의 제1 픽셀 및 복수의 GUI 아이템 사이의 여분 영역에 대응되는 복수의 제2 픽셀을 일정한 속도로 일 방향으로 이동시켜 표시할 수 있다. 이에 따라 UI 화면의 행이나 열에 다양한 크기 및/또는 비율의 GUI 아이템이 섞여 있는 경우에도 스크롤 속도를 일정하게 유지하므로써 네비게이션 시 부드러운 스크롤 모션을 제공할 수 있게 된다.
도 5, 도 6a 및 도 6b는 일 실시 예에 따른 스크롤 방향에 따른 스크롤 속도 식별 방법을 설명하기 위한 도면들이다.
*도 5에 따르면, 프로세서(120)는 복수의 GUI 아이템 및 복수의 GUI 아이템 중 어느 하나의 GUI 아이템에 위치한 포커스 GUI를 포함하는 UI 화면을 표시할 수 있다(S510).
프로세서(120)는 기 설정된 네비게이션 입력에 대응되는 스크롤 방향이 가로 방향인 경우(S520:Y), 복수의 제1 GUI 아이템 각각의 너비 정보에 기초하여 스크롤 속도를 식별할 수 있다(S530).
예를 들어, 도 6a에 도시된 바와 같이 스크롤 방향이 가로 방향인 경우, 프로세서(120)는 가로 방향으로 배열된 복수의 GUI 아이템(611 내지 619) 각각의 너비 정보에 기초하여 스크롤 속도를 식별할 수 있다. 예를 들어, 수학식 1과 같이 동일한 너비에 해당하는 아이템들의 개수에 해당 아이템에 대응되는 적정 스크롤 속도를 곱하여 산출된 값을 더한 후 총 아이템 개수로 나누어 스크롤 속도를 획득할 수 있다.
또는 프로세서(120)는 상술한 바와 같이 스크롤 대상 구간의 가로 방향 길이를 기 정의된 스크롤 시간으로 나누어 스크롤 속도를 획득할 수 있다. 기 정의된 스크롤 시간은 스크롤 대상 구간의 크기 또는 스크롤 대상 구간에 포함된 GUI 아이템의 크기/개수에 따라 결정된 시간일 수 있다.
또는 프로세서(120)는 스크롤 대상 구간의 가로 방향 길이에 따라 기 정의된 스크롤 속도를 획득할 수도 있다. 예를 들어, 기 정의된 스크롤 속도는 스크롤 대상 구간에 길이 별로 맵핑되어 룩업 테이블 형태로 메모리(130)에 저장되어 있을 수 있다. 이 경우, 동일한 길이의 스크롤 대상 구간이라도 스크롤 대상 구간에 포함된 상이한 크기의 아이템의 비율 또는 개수에 따라 상이한 스크롤 속도가 맵핑되어 있을 수도 있다.
또는 프로세서(120)는 기준 스크롤 속도에 스크롤 대상 구간의 가로 방향 길이에 대응되는 기 설정된 가중치를 곱하여 스크롤 속도를 산출할 수도 있다. 이 경우, 동일한 길이의 스크롤 대상 구간이라도 스크롤 대상 구간에 포함된 상이한 크기의 아이템의 비율 또는 개수에 따라 상이한 가중치가 적용될 수도 있다.
프로세서(120)는 기 설정된 네비게이션 입력에 대응되는 스크롤 방향이 세로 방향인 경우(S540:Y), 복수의 제1 GUI 아이템 각각의 높이 정보에 기초하여 스크롤 속도를 식별할 수 있다(S550).
예를 들어, 도 6b에 도시된 바와 같이 스크롤 방향이 세로 방향인 경우, 프로세서(120)는 세로 방향으로 배열된 복수의 GUI 아이템(621 내지 626) 각각의 높이 정보에 기초하여 스크롤 속도를 식별할 수 있다. 예를 들어, 프로세서(120)는 수학식 1과 같이 동일한 높이에 해당하는 아이템들의 개수에 해당 아이템에 대응되는 적정 스크롤 속도를 곱하여 산출된 값을 더한 후 총 아이템 개수로 나누어 스크롤 속도를 획득할 수 있다. 그 밖에 가로 방향 스크롤과 동일/유사한 방식으로 스크롤 속도를 획득할 수 있다.
예를 들어, 도 6c에 도시된 바와 같이 GUI 아이템들이 액자형으로 배열되어 있고 스크롤 방향이 세로 방향인 경우, 프로세서(120)는 세로 방향으로 배열된 복수의 GUI 아이템(631 내지 634) 각각의 높이 정보에 기초하여 스크롤 속도를 식별할 수 있다. 도시된 바와 같이 스크롤 방향에 배치된 특정 GUI 아이템(632)을 기준으로 세로 방향으로 두 개의 GUI 아이템(633, 635)이 배치된 경우 프로세서(120)는 기 정의된 위치(예를 들어, 좌측)의 GUI 아이템(633)으로 스크롤할 수 있다. 예를 들어, 프로세서(120)는 수학식 1과 같이 동일한 높이에 해당하는 GUI 아이템들의 개수에 해당 아이템에 대응되는 적정 스크롤 속도를 곱하여 산출된 값을 더한 후 총 아이템 개수로 나누어 스크롤 속도를 획득할 수 있다. 그 밖에 가로/세로 방향 스크롤과 동일/유사한 방식으로 스크롤 속도를 획득할 수 있다.
도 7은 일 실시 예에 따른 스크롤 방향에 따른 스크롤 속도 식별 방법을 설명하기 위한 도면이다.
도 7에 도시된 바와 같이 대각선 방향의 네비게이션 입력이 식별되는 경우, 프로세서(120)는 대각선 방향으로 배치된 GUI 아이템들의 크기에 기초하여 스크롤 속도를 산출할 수 있다. 예를 들어, 프로세서(120)는 특정 픽셀(711-1)에서 좌측 대각선 방향 픽셀(711-2)로의 이동 속도를 특정 픽셀(711-1)>하측 픽셀(711-3)>좌측 픽셀(711-2)로 이동하는 거리에 기초하여 산출할 수 있다. 예를 들어, 스크롤 구간에 포함된 모든 대각선 방향 픽셀에 대하여 동일한 방식으로 거리를 식별하고, 식별된 거리를 기 정의된 스크롤 시간으로 나누어 스크롤 속도를 산출할 수 있다. 여기서, 기 정의된 스크롤 시간은 대각선 방향에 배치된 GUI 아이템의 크기, 개수 등에 기초하여 결정된 시간일 수 있다.
도 8은 일 실시 예에 따른 인지 특성을 고려한 스크롤 속도 식별 방법을 설명하기 위한 도면이다.
일 실시 예에 따르면, 프로세서(120)는 부드러운 스크롤 모션을 위해 스크롤 속도를 인지 가능한 모션 시간에 기초하여 업데이트할 수 있다. 이는 스크롤 속도 v가 너무 빠르면, 상대적으로 크기가 작은 GUI 아이템이 순간적으로 점프하는 것 처럼 보일 수 있기 때문이다.
이에 따라 도 8에 따르면, 프로세서(120)는 스크롤 대상 구간에 포함된 복수의 제1 GUI 아이템 중 가장 작은 크기의 GUI 아이템의 크기 및 스크롤 속도에 기초하여 최소 모션 필요 시간을 식별할 수 있다(S810). 구체적으로, 복수의 제1 GUI 아이템 중 가장 작은 크기의 GUI 아이템의 크기를 스크롤 속도로 나눈 값에 기초하여 최소 모션 필요 시간을 식별할 수 있다. 예를 들어, 최소 모션 필요 시간 t는 하기 수학식 2에 기초하여 산출될 수 있다.
Figure PCTKR2023006788-appb-img-000002
여기서, t는 최소 모션 필요 시간, W는 스크롤 대상 구간에 포함된 GUI 아이템 중 가장 작은 아이템의 크기(예를 들어, 너비 또는 높이), V는 스크롤 속도일 수 있다.
이어서, 프로세서(120)는 최소 모션 필요 시간이 기 설정된 인지 가능한 모션 시간 미만인지 여부를 식별한다(S820). 여기서, 기 설정된 인지 가능한 모션 시간은 기존 연구에 기초하여 획득된 값으로 예를 들어, 100ms일 수 있다(https://www.nngroup.com/articles/response-times-3-important-limits/, https://www.nngroup.com/articles/animation-duration/).
최소 모션 필요 시간이 기 설정된 인지 가능한 모션 시간 미만인 경우(S820:Y), 프로세서(120)는 스크롤 속도를 인지 가능한 모션 시간에 기초하여 업데이트할 수 있다. 예를 들어, 최소 모션 필요 시간 t가 100ms 미만인 경우, 스크롤 속도를 100ms 이상의 값으로 업데이트할 수 있다. 예를 들어, 프로세서(120)는 디스플레이(110)의 크기, 디스플레이(110)의 모드(가로 모드 또는 세로 모드), 스크롤 구간에 포함된 GUI 아이템의 평균 크기, GUI 아이템의 크기/비율 별 개수 등을 고려하여 업데이트된 스크롤 속도를 산출할 수 있다.
도 9 및 도 10은 일 실시 예에 따른 스크롤 속도 업데이트 방법을 설명하기 위한 도면들이다.
일 실시 예에 따르면, 프로세서(120)는 컨텍스트 변화에 대응하여 스크롤 속도를 실시간으로 업데이트할 수 있다. 예를 들어, 프로세서(120)는 스크롤이 시작되고 종료된 후, 동일하거나 다른 방향으로 새로운 스크롤이 발생되면 새로운 GUI 아이템을 기준으로 스크롤 속도를 업데이트할 수 있다.
도 9에 따르면, 프로세서(120)는 제1 네비게이션 입력에 기초한 스크롤이 종료된 후, 제2 네비게이션 입력이 식별되면(S910:Y), 제2 네비게이션 입력에 기초하여 스크롤 대상 구간에 포함된 복수의 제2 GUI 아이템 각각의 크기 정보를 식별할 수 있다(S920).
이어서, 프로세서(120)는 복수의 제2 GUI 아이템 각각의 크기 정보에 기초하여 스크롤 속도를 업데이트할 수 있다(S930).
예를 들어, 도 10에 도시된 바와 같이 GUI 아이템 1011에서 우측 방향의 제1 네비게이션 입력이 식별되고 제1 네비게이션 입력에 대응되는 우측 방향 스크롤이 GUI 아이템 1012에서 종료된 후, GUI 아이템 1013에서 우측 방향의 제2 네비게이션 입력이 식별되면, GUI 아이템 1013을 기준으로 스크롤 대상 구간이 식별되고, 식별된 대상 구간에 기초하여 제2 네비게이션 입력에 대응되는 스크롤 속도가 식별될 수 있다.
이 후, 제2 네비게이션 입력에 대응되는 우측 방향 스크롤이 GUI 아이템 1014에서 종료된 후 동일한 GUI 아이템 1014에서 하측 방향의 제3 네비게이션 입력이 식별되면, GUI 아이템 1014를 기준으로 스크롤 대상 구간이 식별되고, 식별된 대상 구간에 기초하여 제3 네비게이션 입력에 대응되는 스크롤 속도가 식별될 수 있다. 이러한 방식으로 각 네비게이션 입력이 식별되는 GUI 아이템(1015, 1016, 1017, 1018, 1019)를 기준으로 각각 스크롤 속도가 업데이트되고, 업데이트된 스크롤 속도에 기초하여 각 네비게이션 입력에 대응되는 스크롤이 수행될 수 있다.
도 11 및 도 12는 일 실시 예에 따른 스크롤 속도 업데이트 방법을 설명하기 위한 도면들이다.
일 실시 예에 따르면, 프로세서(120)는 스크롤이 진행되는 중에 스크롤 대상 구간에 포함된 GUI 아이템이 업데이트되는 경우 업데이트 시점을 기준으로 스크롤 대상 구간을 재식별하여 스크롤 속도를 업데이트할 수 있다.
도 11에 따르면, 프로세서(120)는 기 설정된 네비게이션 입력에 기초한 스크롤이 진행되는 동안, 스크롤 대상 구간에 포함된 복수의 제1 GUI 아이템이 업데이트되는지 여부를 식별한다(S1110). 일 예에 따라 GUI 아이템의 실시간 로딩(loading) 또는 GUI 아이템의 루핑(looping) 중 적어도 하나에 기초하여 스크롤 대상 구간에 포함된 GUI 아이템이 업데이트될 수 있다. 여기서, GUI 아이템의 루핑은 리스트의 마지막 아이템 이후에 리스트의 첫번째 아이템을 포함한 아이템이 스크롤 대상 구간으로 추가되는 경우 등을 포함할 수 있다.
스크롤 대상 구간에 포함된 복수의 제1 GUI 아이템이 업데이트된 경우(S1110:Y), 프로세서(120)는 업데이트 시점에 기초하여 스크롤 대상 구간을 재식별할 수 있다(S1120).
이어서, 프로세서(120)는 재식별된 스크롤 대상 구간에 포함된 복수의 제3 GUI 아이템 각각의 크기 정보에 기초하여 스크롤 속도를 업데이트할 수 있다(S1130).
예를 들어, 도 12에 도시된 바와 같이 t1 시점에서 GUI 아이템 1211에서 네비게이션 입력이 식별된 경우 스크롤 대상 구간(1210)을 기초로 식별된 스크롤 속도, 예를 들어 v1을 기초로 스크롤이 수행될 수 있다. v1 속도로 스크롤이 진행되는 동안 특정 시점 t2에서 스크롤 대상 구간에 포함된 GUI 아이템이 업데이트된 것으로 식별되면, 프로세서(120)는 해당 시점을 기준으로 스크롤 속도를 업데이트할 수 있다. 예를 들어, 프로세서(120)는 GUI 아이템 1221까지 스크롤이 진행된 t2 시점에서 스크롤 대상 구간(1220)에 포함된 GUI 아이템이 업데이트된 것으로 식별되면, GUI 아이템 1221 이후의 스크롤 대상 구간(1220)을 기초로 스크롤 속도를 v2로 업데이트할 수 있다. 이에 따라 GUI 아이템 1221 이후의 스크롤은 업데이트된 스크롤 속도 v2로 수행될 수 있게 된다.
또한, 프로세서(120)는 GUI 아이템 1231까지 스크롤이 진행된 t3 시점에서 스크롤 대상 구간(1230)에 포함된 GUI 아이템이 업데이트된 것으로 식별되면, GUI 아이템 1231 이후의 스크롤 대상 구간(1230)을 기초로 스크롤 속도를 업데이트할 수 있다. 이에 따라 GUI 아이템 1231 이후의 스크롤은 업데이트된 스크롤 속도 v3로 수행될 수 있게 된다.
도 13은 일 실시 예에 따른 디스플레이 크기에 따른 스크롤 속도의 업데이트 방법을 설명하기 위한 도면이다.
일 실시 예에 따르면, 디스플레이(110)의 크기가 기 설정된 크기 이상인 경우, 프로세서(120)는 디스플레이(110)의 크기 및 기 설정된 크기 간 차이 정보, 및 스크롤 속도에 기초하여 스크롤 속도를 업데이트할 수 있다. 예를 들어, 동일한 해상도라도 디스플레이(110)의 크기에 따라 GUI 아이템의 물리적 크기는 상이할 수 있다. 이에 따라 UI 화면을 스크롤하는 체감 속도는 디스플레이(110)의 크기가 클 수록 빨라지게 된다. 이는 동일한 시간에 대한 물리적 이동 거리가 길어지기 때문이다.
최근 스크린의 크기가 커지면서 75" 이상의 대형 스크린은 3m 시청 거리에서 사람의 중심 시야각 30º에 한눈에 들어오지 않게 된다. 이 경우, 화면 전체를 이동하는 가로 스크롤의 경우, 조작 시 사용자의 안구와 고개 움직임이 커지게 되고, 이로 인해 정보를 받아드리는데 피로도가 증가하고 효율성이 감소하게 된다. 이에 따라 일 실시 예에 따르면, 디스플레이(110)의 크기에 기초하여 스크롤 속도를 보정할 수 있다. 예를 들어 도 13에 도시된 바와 같이 스크롤 방향과 스크린 방향이 동일한 가로 방향인 경우, 3m 시청 거리에서 중심 시야각 30도의 스크린 너비(1310)를'기준 스크린 너비'로 정의할 수 있다.
일 실시 예에 따라 프로세서(120)는 대상 스크린 너비가 기준 스크린 너비보다 더 큰 경우에 스크롤 속도를 상대적으로 느리게 보정할 수 있다. 이는 중심 시야각을 벗어나는 스크롤 구간이 발생하여도 인지하는 시간에 여유를 주어 정보를 더 잘 받아들일 수 있게 하기 위함이다. 스크롤 방향과 스크린 방향이 세로인 경우 동일한 방법으로 스크롤 속도를 보정하되, 대상 스크린 높이 및 기준 스크린 높이를 기준으로 스크롤 속도를 보정할 수 있다.
일 예에 따라 기준 스크린 너비 대비 대상 스크린 너비의 비율을 나타내는 R 값을 하기 수학식 3과 같이 정의할 수 있다.
Figure PCTKR2023006788-appb-img-000003
이 경우, 보정된 스크롤 속도는 하기 수학식 4와 같이 산출될 수 있다.
Figure PCTKR2023006788-appb-img-000004
여기서, V는 스크롤 속도이며, R은 수학식 3에서 산출된 값일 수 있다.
다만 상술한 실시 예는 스크린 너비에 기초하여 스크롤 속도를 보정하는 일 예에 불과하며, 스크롤 속도는 다양한 방식으로 보정 가능하다. 예를 들어, 프로세서(120)는 스크롤 속도에 R 값에 따라 기 정의된 가중치를 곱하여 보정된 스크롤 속도를 획득할 수 있다. 이 경우, R 값에 따라 기 정의된 가중치는 룩업 테이블 형태로 저장되어 있거나, 외부 장치로부터 수신될 수 있다.
도 14는 일 실시 예에 따른 디스플레이 방향에 따른 스크롤 속도의 업데이트 방법을 설명하기 위한 도면이다.
일 실시 예에 따르면, 디스플레이(110)는 회전 가능한 디스플레이로 구현될 수 있다. 예를 들어, 16:9 스크린이 세로로 회전하게 되면 9:16이 되어 화면의 가로 폭이 좁아지게 된다. 이 경우, UI 화면을 스크롤할 때 리스트에 포함된 GUI 아이템이 화면에 노출되는 시간이 줄어들어 정보를 파악하기 어렵게 된다. 이에 따라 디스플레이(110)를 가로 모드에서 세로 모드로 회전하는 경우 화면 폭이 감소한 만큼 스크롤 속도를 상대적으로 조금 더 느리게 보정해 줄 수 있다. 여기서, 속도의 감소 폭은 기 정의되어 있거나, 기 설정된 가중치를 적용하여 결정될 수 있다. 여기서, 기 설정된 가중치는 스크린의 가로/세로 비율, 스크린의 크기, 가로 모드 및 세로 모드에서의 GUI 아이템의 크기 차이 등에 기초하여 정의된 값일 수 있다.
일 예에 따라 도 14의 좌측에 도시된 바와 같이 프로세서(120)는 디스플레이(110)가 가로 모드에 있는 동안 네비게이션 입력에 따라 산출된 스크롤 속도에 기초하여 복수의 GUI 아이템을 일 방향으로 이동시켜 표시할 수 있다.
이 후, 기 설정된 이벤트에 따라 디스플레이(110)가 세로 모드로 회전되면, 프로세서(120)는 세로 모드에서 디스플레이(110)의 폭 정보에 기초하여 스크롤 속도를 보정하고, 보정된 스크롤 속도에 기초하여 복수의 GUI 아이템을 일 방향으로 이동시켜 표시할 수 있다. 여기서, 기 설정된 이벤트는 사용자 명령, 컨텐츠 비율 변경 등이 될 수 있다.
예를 들어, 프로세서(140)는 가로 모드에서의 스크롤 속도에 기설정된 가중치를 곱하여 세로 모드에서의 보정된 스크롤 속도를 산출할 수 있다. 예를 들어, 가로 모드에서의 화면 폭 및 세로 모드에서의 화면 폭의 비율에 따른 가중치가 룩업 테이블 형태로 저장되어 있거나, 외부 장치로부터 수신될 수 있다.
상술한 다양한 실시 예들에 따르면, 이에 따라 UI 화면의 행이나 열에 다양한 크기/비율의 GUI 아이템이 섞여 있는 경우에도 스크롤 속도를 일정하게 유지하므로써 네비게이션 시 부드러운 스크롤 모션을 제공할 수 있게 된다.
한편, 상술한 본 개시의 다양한 실시 예들에 따른 방법들은, 기존 전자 장치에 설치 가능한 어플리케이션 형태로 구현될 수 있다. 또는 상술한 본 개시의 다양한 실시 예들에 따른 방법들 중 적어도 일부는 딥 러닝 기반의 인공 지능 모델 즉, 학습 네트워크 모델을 이용하여 수행될 수 있다.
또한, 상술한 본 개시의 다양한 실시 예들에 따른 방법들은, 기존 전자 장치에 대한 소프트웨어 업그레이드, 또는 하드웨어 업그레이드 만으로도 구현될 수 있다.
또한, 상술한 본 개시의 다양한 실시 예들은 전자 장치에 구비된 임베디드 서버, 또는 전자 장치의 외부 서버를 통해 수행되는 것도 가능하다.
한편, 본 개시의 일시 예에 따르면, 이상에서 설명된 다양한 실시 예들은 기기(machine)(예: 컴퓨터)로 읽을 수 있는 저장 매체(machine-readable storage media)에 저장된 명령어를 포함하는 소프트웨어로 구현될 수 있다. 기기는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 동작이 가능한 장치로서, 개시된 실시 예들에 따른 전자 장치(예: 전자 장치(A))를 포함할 수 있다. 명령이 프로세서에 의해 실행될 경우, 프로세서가 직접, 또는 프로세서의 제어 하에 다른 구성요소들을 이용하여 명령에 해당하는 기능을 수행할 수 있다. 명령은 컴파일러 또는 인터프리터에 의해 생성 또는 실행되는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장 매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다.
또한, 본 개시의 일 실시 예에 따르면, 이상에서 설명된 다양한 실시 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 온라인으로 배포될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
또한, 상술한 다양한 실시 예들에 따른 구성 요소(예: 모듈 또는 프로그램) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성 요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성 요소가 다양한 실시 예에 더 포함될 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예: 모듈 또는 프로그램)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당 구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. 다양한 실시 예들에 따른, 모듈, 프로그램 또는 다른 구성 요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
이상에서는 본 개시의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 개시는 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 개시의 요지를 벗어남이 없이 당해 개시에 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 개시의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안될 것이다.

Claims (15)

  1. 전자 장치에 있어서,
    디스플레이; 및
    복수의 GUI(Graphic User Interface) 아이템 및 상기 복수의 GUI 아이템 중 어느 하나의 GUI 아이템에 위치한 포커스 GUI를 포함하는 UI(User Interface) 화면을 표시하도록 상기 디스플레이를 제어하고, 기 설정된 네비게이션 입력에 따라 상기 복수의 GUI 아이템을 일 방향으로 이동시켜 표시하도록 상기 디스플레이를 제어하는 하나 이상의 프로세서;를 포함하며,
    상기 하나 이상의 프로세서는,
    상기 기 설정된 네비게이션 입력에 기초하여 스크롤 대상 구간에 포함된 복수의 제1 GUI 아이템 각각의 크기 정보를 식별하고,
    상기 복수의 제1 GUI 아이템 각각의 크기 정보에 기초하여 스크롤 속도를 식별하고,
    상기 스크롤 속도에 기초하여 상기 복수의 GUI 아이템을 일 방향으로 이동시켜 표시하도록 상기 디스플레이를 제어하는, 전자 장치.
  2. 제1항에 있어서,
    상기 하나 이상의 프로세서는,
    상기 기 설정된 네비게이션 입력에 대응되는 스크롤 방향이 가로 방향인 경우, 상기 복수의 제1 GUI 아이템 각각의 너비 정보에 기초하여 상기 스크롤 속도를 식별하고,
    상기 기 설정된 네비게이션 입력에 대응되는 스크롤 방향이 세로 방향인 경우, 상기 복수의 제1 GUI 아이템 각각의 높이 정보에 기초하여 상기 스크롤 속도를 식별하는, 전자 장치.
  3. 제1항에 있어서,
    상기 하나 이상의 프로세서는,
    상기 복수의 제1 GUI 아이템 중 가장 작은 GUI 아이템의 크기를 상기 스크롤 속도로 나눈 값에 기초하여 최소 모션 필요 시간을 식별하고,
    상기 최소 모션 필요 시간이 기 설정된 인지 가능한 모션 시간 미만인 경우, 상기 스크롤 속도를 상기 인지 가능한 모션 시간에 기초하여 업데이트하는, 전자 장치.
  4. 제1항에 있어서,
    상기 하나 이상의 프로세서는,
    제1 네비게이션 입력에 기초한 스크롤이 종료된 후, 제2 네비게이션 입력이 식별되면, 상기 제2 네비게이션 입력에 기초하여 스크롤 대상 구간에 포함된 복수의 제2 GUI 아이템 각각의 크기 정보를 식별하고,
    상기 복수의 제2 GUI 아이템 각각의 크기 정보에 기초하여 상기 스크롤 속도를 업데이트하는, 전자 장치.
  5. 제1항에 있어서,
    상기 하나 이상의 프로세서는,
    상기 기 설정된 네비게이션 입력에 기초한 스크롤이 진행되는 동안, GUI 아이템의 실시간 로딩(loading) 또는 GUI 아이템의 루핑(looping) 중 적어도 하나에 기초하여 상기 스크롤 대상 구간에 포함된 복수의 제1 GUI 아이템이 업데이트되는 경우, 업데이트 시점에 기초하여 스크롤 대상 구간을 재식별하고,
    상기 재식별된 스크롤 대상 구간에 포함된 복수의 제3 GUI 아이템 각각의 크기 정보에 기초하여 상기 스크롤 속도를 업데이트하는, 전자 장치.
  6. 제1항에 있어서,
    상기 하나 이상의 프로세서는,
    상기 디스플레이의 크기가 기 설정된 크기 이상인 경우, 상기 디스플레이의 크기 및 상기 기 설정된 크기 간 차이 정보, 및 상기 스크롤 속도에 기초하여 상기 스크롤 속도를 업데이트하는, 전자 장치.
  7. 제1항에 있어서,
    상기 디스플레이는, 회전 가능한 디스플레이로 구현되며,
    상기 하나 이상의 프로세서는,
    상기 디스플레이가 가로 모드에 있는 동안 상기 스크롤 속도에 기초하여 상기 복수의 GUI 아이템을 일 방향으로 이동시켜 표시하도록 상기 디스플레이를 제어하고,
    상기 디스플레이가 세로 모드로 회전되면, 상기 세로 모드에서 상기 디스플레이의 폭 정보에 기초하여 상기 스크롤 속도를 감소시켜 상기 스크롤 속도를 보정하고,
    상기 디스플레이가 상기 세로 모드에 있는 동안 상기 보정된 스크롤 속도에 기초하여 상기 복수의 GUI 아이템을 일 방향으로 이동시켜 표시하도록 상기 디스플레이를 제어하는, 전자 장치.
  8. 제1항에 있어서,
    상기 하나 이상의 프로세서는,
    상기 스크롤 속도에 기초하여 상기 복수의 GUI 아이템에 대응되는 복수의 제1 픽셀 및 상기 복수의 GUI 아이템 사이의 여분 영역에 대응되는 복수의 제2 픽셀을 일정한 속도로 일 방향으로 이동시켜 표시하도록 상기 디스플레이를 제어하는, 전자 장치.
  9. 제1항에 있어서,
    상기 하나 이상의 프로세서는,
    상기 복수의 제1 GUI 아이템 각각의 크기 정보 및 상기 복수의 제1 GUI 아이템 각각에 대응되는 기본 스크롤 속도에 기초하여 상기 스크롤 속도를 식별하며,
    상기 복수의 제1 GUI 아이템 각각의 상기 기본 스크롤 속도 정보는,
    상기 복수의 제1 GUI 아이템 각각에 동일하게 할당된 스크롤 시간 및 상기 기 설정된 네비게이션 입력의 스크롤 방향으로 상기 복수의 제1 GUI 아이템 각각에 포함된 픽셀 수에 기초하여 산출된 속도 정보인, 전자 장치.
  10. 제1항에 있어서,
    상기 복수의 제1 GUI 아이템 각각의 크기 정보는,
    너비 또는 높이 중 적어도 하나의 정보 및 비율 정보를 포함하며,
    상기 복수의 제1 GUI 아이템 중 적어도 일부 GUI 아이템의 비율 및 크기는 상이하며,
    상기 기 설정된 네비게이션 입력은,
    상기 복수의 GUI 아이템을 연속적으로 이동시키기 위한 사용자 입력에 대응되는, 전자 장치.
  11. 전자 장치의 UI 제공 방법에 있어서,
    복수의 GUI(Graphic User Interface) 아이템 및 상기 복수의 GUI 아이템 중 어느 하나의 GUI 아이템에 위치한 포커스 GUI를 포함하는 UI(User Interface) 화면을 표시하는 단계;
    기 설정된 네비게이션 입력에 기초하여 스크롤 대상 구간에 포함된 복수의 제1 GUI 아이템 각각의 크기 정보 및 스크롤 속도 정보를 식별하는 단계;
    상기 복수의 제1 GUI 아이템 각각의 크기 정보 에 기초하여 스크롤 속도를 식별하는 단계; 및
    상기 스크롤 속도에 기초하여 상기 복수의 GUI 아이템을 일 방향으로 이동시켜 표시하는 단계;를 포함하는 UI 제공 방법.
  12. 제11항에 있어서,
    상기 스크롤 속도를 식별하는 단계는,
    상기 기 설정된 네비게이션 입력에 대응되는 스크롤 방향이 가로 방향인 경우, 상기 복수의 제1 GUI 아이템 각각의 너비 정보에 기초하여 상기 스크롤 속도를 식별하고,
    상기 기 설정된 네비게이션 입력에 대응되는 스크롤 방향이 세로 방향인 경우, 상기 복수의 제1 GUI 아이템 각각의 높이 정보에 기초하여 상기 스크롤 속도를 식별하는, UI 제공 방법.
  13. 제11항에 있어서,
    상기 복수의 제1 GUI 아이템 중 가장 작은 GUI 아이템의 크기를 상기 스크롤 속도로 나눈 값에 기초하여 최소 모션 필요 시간을 식별하는 단게; 및
    상기 최소 모션 필요 시간이 기 설정된 인지 가능한 모션 시간 미만인 경우, 상기 스크롤 속도를 상기 인지 가능한 모션 시간에 기초하여 업데이트하는 단계;를 더 포함하는, UI 제공 방법.
  14. 제11항에 있어서,
    제1 네비게이션 입력에 기초한 스크롤이 종료된 후, 제2 네비게이션 입력이 식별되면, 상기 제2 네비게이션 입력에 기초하여 스크롤 대상 구간에 포함된 복수의 제2 GUI 아이템 각각의 크기 정보를 식별하는 단계; 및
    상기 복수의 제2 GUI 아이템 각각의 크기 정보에 기초하여 상기 스크롤 속도를 업데이트하는 단계;를 더 포함하는, UI 제공 방법.
  15. 전자 장치의 프로세서에 의해 실행되는 경우 상기 전자 장치가 동작을 수행하도록 하는 컴퓨터 명령을 저장하는 비일시적 컴퓨터 판독 가능 매체에 있어서,
    상기 동작은,
    복수의 GUI(Graphic User Interface) 아이템 및 상기 복수의 GUI 아이템 중 어느 하나의 GUI 아이템에 위치한 포커스 GUI를 포함하는 UI(User Interface) 화면을 표시하는 단계;
    기 설정된 네비게이션 입력에 기초하여 스크롤 대상 구간에 포함된 복수의 제1 GUI 아이템 각각의 크기 정보 및 스크롤 속도 정보를 식별하는 단계;
    상기 복수의 제1 GUI 아이템 각각의 크기 정보 에 기초하여 스크롤 속도를 식별하는 단계; 및
    상기 스크롤 속도에 기초하여 상기 복수의 GUI 아이템을 일 방향으로 이동시켜 표시하는 단계;를 포함하는, 비일시적 컴퓨터 판독 가능 매체.
PCT/KR2023/006788 2022-07-15 2023-05-18 전자 장치 및 그 ui 제공 방법 WO2024014687A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2022-0087728 2022-07-15
KR1020220087728A KR20240010314A (ko) 2022-07-15 2022-07-15 전자 장치 및 그 ui 제공 방법

Publications (1)

Publication Number Publication Date
WO2024014687A1 true WO2024014687A1 (ko) 2024-01-18

Family

ID=89536870

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2023/006788 WO2024014687A1 (ko) 2022-07-15 2023-05-18 전자 장치 및 그 ui 제공 방법

Country Status (2)

Country Link
KR (1) KR20240010314A (ko)
WO (1) WO2024014687A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100708135B1 (ko) * 2005-05-25 2007-04-17 삼성전자주식회사 항목의 블록화를 이용한 스크롤 방법 및 장치
KR20150025223A (ko) * 2013-08-28 2015-03-10 삼성전자주식회사 컨텐츠 표시 제어 방법 및 그 전자 장치
KR20160078026A (ko) * 2014-12-24 2016-07-04 삼성전자주식회사 디스플레이 장치 및 디스플레이 방법
KR20170042350A (ko) * 2014-08-14 2017-04-18 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 그룹 기반의 유저 인터페이스 재배열
JP2022023940A (ja) * 2018-10-25 2022-02-08 パイオニア株式会社 表示制御装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100708135B1 (ko) * 2005-05-25 2007-04-17 삼성전자주식회사 항목의 블록화를 이용한 스크롤 방법 및 장치
KR20150025223A (ko) * 2013-08-28 2015-03-10 삼성전자주식회사 컨텐츠 표시 제어 방법 및 그 전자 장치
KR20170042350A (ko) * 2014-08-14 2017-04-18 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 그룹 기반의 유저 인터페이스 재배열
KR20160078026A (ko) * 2014-12-24 2016-07-04 삼성전자주식회사 디스플레이 장치 및 디스플레이 방법
JP2022023940A (ja) * 2018-10-25 2022-02-08 パイオニア株式会社 表示制御装置

Also Published As

Publication number Publication date
KR20240010314A (ko) 2024-01-23

Similar Documents

Publication Publication Date Title
WO2021157950A1 (ko) 디스플레이 구동 방법 및 이를 지원하는 전자 장치
WO2018093143A1 (en) Display apparatus and control method thereof
WO2014142557A1 (en) Electronic device and method for processing image
WO2020138680A1 (en) Image processing apparatus and image processing method thereof
WO2021137437A1 (en) Display apparatus and control method thereof
WO2019022387A1 (en) DISPLAY APPARATUS AND METHOD OF CONTROLLING THE SAME
WO2017146518A1 (en) Server, image display apparatus, and method of operating the image display apparatus
WO2020213886A1 (en) Electronic apparatus and controlling method thereof
WO2015102248A1 (en) Display apparatus and channel map managing method thereof
WO2022108192A1 (ko) 전자 장치 및 전자 장치의 멀티윈도우 제어방법
WO2021096137A1 (en) Display apparatus and control method thereof
WO2020231243A1 (en) Electronic device and method of controlling thereof
WO2024014687A1 (ko) 전자 장치 및 그 ui 제공 방법
EP3629229A1 (en) Method, and corresponding apparatus, for controlling display of images on a display in dependence on the surroundings of the display
WO2022059920A1 (ko) 전자 장치, 그 제어 방법 및 전자 시스템
WO2021261919A1 (ko) 디스플레이의 리프레쉬 레이트를 동적으로 조정하는 전자 장치
US10949704B2 (en) Electronic apparatus and control method thereof
US20120287133A1 (en) Image processing apparatus and image processing method
WO2023243812A1 (ko) 전자 장치 및 그 ui 제공 방법
WO2024090728A1 (ko) 전자 장치 및 그 ui 제공 방법
WO2022119093A1 (ko) 디스플레이 장치 및 그 제어 방법
WO2022092599A1 (ko) 전자 장치, 시스템 및 그 제어 방법
WO2022124570A1 (ko) 디스플레이 장치 및 그 동작방법
WO2022191409A1 (ko) 전자 장치 및 그 제어 방법
WO2022215824A1 (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: 23839781

Country of ref document: EP

Kind code of ref document: A1