Patent Description:
As communication technologies radically advance, various services are provided to allow users to enjoy a virtual reality and the real world simultaneously. For example, portable terminals provide an Augmented Reality (AR) service which overlays a graphical or text-type image describing an object over the object image input through a camera.

<FIG> illustrates a screen configuration for providing AR service in a portable terminal.

When a user executes an AR application, the portable terminal of <FIG> drives the camera, displays the image input from the camera on a screen, collects information of Point Of Interests (POIs) in the input image based on current location information, and then displays the collected information on the screen. The user may obtain the information related to the POI information in the vicinity by simply executing the AR application in the portable terminal and photographing the corresponding POI without having to look up the information in a book or to search on the internet.

However, as more portable terminals are used, users' expectation and demands for various service functions of the portable terminal are increasing. In this respect, to satisfy the high expectations and the diverse tastes of the users, it is necessary to provide various functions for the wide usage of the AR service.

<CIT> discloses a method and apparatus for matching a camera-photographed image with map data and a guidance operation for a user based on the matched data, wherein guidance indicators, e.g., text data on a displayed object, are read out from map data and are displayed inserted in the displayed object. <CIT> discloses a method for determining an absolute location of an object, based on an absolute position of an electronic device and a relative position between the electronic device and the object and further, based on the absolute location of the object, for retrieving information on the object from a database.

To address the above-discussed deficiencies of the prior art, it is a primary aspect of the present invention to provide a method and an apparatus in accordance with the appended claims.

Other aspects, advantages, and salient features of the invention will become apparent to those skilled in the art from the following detailed description, which, taken in conjunction with the annexed drawings, discloses embodiments of the invention.

Before undertaking the DETAILED DESCRIPTION OF THE INVENTION below, it may be advantageous to set forth definitions of certain words and phrases used throughout this patent document: the terms "include" and "comprise," as well as derivatives thereof, mean inclusion without limitation; the term "or," is inclusive, meaning and/or; the phrases "associated with" and "associated therewith," as well as derivatives thereof, may mean to include, be included within, interconnect with, contain, be contained within, connect to or with, couple to or with, be communicable with, cooperate with, interleave, juxtapose, be proximate to, be bound to or with, have, have a property of, or the like.

Those skilled in the art will understand that the principles of the present disclosure may be implemented in any suitably arranged portable terminal.

Embodiments of the present invention provide a method and an apparatus for providing a service using image recognition and a sensor in a portable terminal that supports Augmented Reality (AR).

<FIG> illustrates a portable terminal that supports AR according to an embodiment of the present invention.

Referring to <FIG>, the portable terminal includes a controller <NUM>, a communication module <NUM>, a Global Positioning System (GPS) receiver <NUM>, a geomagnetic sensor <NUM>, an acceleration sensor <NUM>, a camera <NUM>, a display unit <NUM>, an input unit <NUM>, and a storage unit <NUM>. The controller <NUM> includes a posture estimator <NUM>, a motion detector <NUM>, a Pedestrian Dead Reckoning (PDR) determiner <NUM>, and an image recognizer <NUM>.

The controller <NUM> controls and processes operations of the portable terminal. When an AR application is executed, the controller <NUM> controls and processes operations to drive the camera <NUM>, to display an image input from the camera <NUM> on a screen of the display unit <NUM>, to obtain current location information by controlling the GPS receiver <NUM>, to collect information of Point Of Interest (POI) in the image based on the current location information, and to display the information on the screen. The POI information may be attained from the storage unit <NUM> or an external device via the communication module <NUM>. Herein, the POI information may include name, location (e.g., latitude and longitude), category, area name, address, phone number, details, and related image information of the corresponding POI.

The controller <NUM> includes the posture estimator <NUM>, the motion detector <NUM>, the PDR determiner <NUM>, and the image recognizer <NUM>. Hence, when the AR application is executed, the controller <NUM> controls and processes operations to provide the service using the geomagnetic sensor <NUM>, the acceleration sensor <NUM>, and the camera <NUM>.

The controller <NUM>, which includes the posture estimator <NUM>, obtains the attitude angle by controlling the acceleration sensor <NUM> and, based on the attitude angle, determines whether the portable terminal is parallel to the ground. In the parallel state, the controller <NUM> determines whether the screen of the portable terminal is facing the ground or the sky. By means of the posture estimator <NUM>, when the portable terminal is substantially parallel with the ground and its screen predominantly faces the sky, the controller <NUM> determines to operate in a compass mode. When the portable terminal is substantially parallel with the ground and its screen predominantly faces the earth, the controller <NUM> determines to operate in a constellation mode. While the controller <NUM> determines whether to enter the compass mode or the constellation mode, according to the horizontality and the screen orientation of the portable terminal, the controller <NUM> may also determine whether to enter the compass mode or the constellation mode according to a lens orientation of the camera <NUM>. Also, the controller <NUM> determines whether the portable terminal is parallel to the ground based on the attitude angle. That is, when the portable terminal and the ground make an angle below a threshold, the controller <NUM> may determine that the portable terminal is parallel with the ground.

When determining to enter the compass mode, the controller <NUM> controls the geomagnetic sensor <NUM> through the posture estimator <NUM> to obtain the orientation information of the portable terminal, controls the GPS receiver <NUM> to obtain the current location information, and displays the map of the current location and the orientation information on the screen of the display unit <NUM>. In so doing, the controller <NUM> may acquire and provide nearby POI information based on the location information over the map. The controller <NUM> keeps displaying the image input from the camera <NUM> on the screen according to the execution of the AR application and displays the map and the orientation information at a certain position on the screen. For example, the controller <NUM> may continue displaying the image input from the camera <NUM> on the screen and display a compass-type map indicating the orientation of the portable terminal in the center of the screen as illustrated in <FIG> and <FIG>. At this time, the compass-type map may indicate the presence of the POI information of the particular POI using an icon, and a distance to the POI such that the user may perceive the distance relation between the current location and the POI. The compass-type map may indicate the orientation of the portable terminal by showing a certain angle based on the location of the portable terminal. The angle alters as the orientation of the portable terminal changes.

When in the constellation mode, the controller <NUM> controls the GPS receiver <NUM> through the posture estimator <NUM> to acquire the current location information, acquires the constellation information based on the current location, and displays the acquired information on the screen of the display unit <NUM>. The constellation information displayed on the screen changes in real time according to the location information of the portable terminal. The constellation information may be acquired from the storage unit <NUM> or an external device via the communication module <NUM>. The constellation information may include location, name, origin, and detailed information of the constellation. For example, when the user holds the portable terminal substantially parallel with the ground while the screen predominantly faces the ground, the controller <NUM> may display the constellation based on the current location as shown in <FIG>.

The controller <NUM>, including the motion detector <NUM>, controls the acceleration sensor <NUM> to detect the motion of the portable terminal caused by the user, and controls and processes to adjust the zoom of the camera <NUM> according to the motion. By means of the motion detector <NUM>, the controller <NUM> determines whether the portable terminal moves backward or forward over a threshold distance, bounces, or snaps, using the motion information such as speed or vibration of the portable terminal attained from the acceleration sensor <NUM>. When the portable terminal moves over the threshold distance, bounces, or snaps, the controller <NUM> controls the camera <NUM> to zoom in or out according to a preset scheme. In more detail, through the acceleration sensor <NUM>, the controller <NUM> determines whether the user pushes or pulls the portable terminal over the threshold distance, whether the user bounces the portable terminal, or whether the user snaps the portable terminal with his/her wrist. According to the determination, the controller <NUM> zooms in or out. For example, when the user pulls the portable terminal (i.e. away from the direction which the camera faces) over the threshold distance as illustrated in <FIG>, the controller <NUM> controls the camera <NUM> to zoom in by a certain level. When the user pushes the portable terminal (i.e. towards the direction which the camera faces) over the threshold distance, the controller <NUM> controls the camera <NUM> to zoom out by a certain level. The zoom in/out degree of the camera <NUM> may vary depending on the distance of the backward or forward movement, the degree of the bounce or the snap, or the number of the bounces or the snaps of the portable terminal, and may be altered by the user's setting. In an embodiment, the zoom in/out function of the camera <NUM>, according to the user's motion, may be carried out irrespective of the horizontality or the verticality of the portable terminal relative to the ground. For example, when the user pulls the portable terminal towards the user while the portable terminal is vertical to the ground, the controller <NUM> may zoom in or out. When the user pushes the portable terminal towards the ground while the portable terminal is parallel to the ground, the controller <NUM> may zoom in or out. In an embodiment, when the portable terminal is moved backward or forward over the threshold distance while it stands perpendicular to the ground, the controller <NUM> may determine whether this movement results from the push or pull of the portable terminal by the user, by determining whether the portable terminal moves toward or in the opposite direction of the screen or the camera of the portable terminal.

The controller <NUM>, including the PDR determiner <NUM>, controls the acceleration sensor <NUM> and the GPS receiver <NUM> to determine the travel distance and the travel time to the POI in the image displayed on the screen, and displays the determined distance and time in the display unit <NUM>. For example, the controller <NUM> may show the travel time to the building in the image displayed on the screen as illustrated in <FIG>. In doing so, the controller <NUM> computes the distance of the actual path of the user, rather than the straight-line distance from the current location of the portable terminal to the corresponding POI, and accordingly computes the travel time. The travel time may be determined using a speed or an average speed of the user during a certain time. The average speed indicates the average speed with respect to a plurality of users, and the speed and the average speed of the user may be distinguished based on the current speed and the situation of the user. In an embodiment, when the current speed exceeds a threshold, the controller <NUM> may determine that the user is driving a vehicle and thus uses the speed or the average speed of the user corresponding to the driving. When the current speed falls below the threshold, the controller <NUM> may determine that the user is walking and thus uses the speed or the average speed of the user corresponding to the walk. The controller <NUM> may determine the travel time to the corresponding POI using the speeds classified based on the condition of the road such as speed on the uphill road, speed on the downhill road, and speed on the stairs. The user speed may be estimated previously or currently, and the average speed may be pre-stored in the design phase of the portable terminal or obtained from an external device via the communication module <NUM>.

The controller <NUM>, including the image recognizer <NUM>, examines whether the current screen is displaying the POI information when the photograph function occurs; that is, when a capture event occurs in the execution of the AR application. When the POI information is displayed, the controller <NUM> captures the image including the displayed POI information. For example, when the AR application is executed in the portable terminal, the POI information corresponding to the image displayed on the screen is present, and the user triggers the photograph event with the POI information displayed on the screen as illustrated in <FIG>, the portable terminal may attain the image including the POI information as illustrated in <FIG> by capturing the screen. At this time, the controller <NUM> tags the image including the POI information as the image related to the POI corresponding to the POI information and stores the tagged image in the storage unit <NUM>. When the user executes a guide application related to the POI to obtain the POI information of the corresponding location as illustrated in <FIG>, the controller <NUM> may display the image including the POI information.

When the photograph function occurs; that is, when the capture event takes place in the execution of the AR application, the controller <NUM> including the image recognizer <NUM> captures the image input from the camera <NUM> and examines whether the captured image includes the user's face. When the user's face is detected, the controller <NUM> collects the POI information corresponding to the captured image through the GPS receiver <NUM>, displays the POI information as a graphical object or a text comment, and controls and processes to synthesize over the captured image. The controller <NUM> may recognize the mouth or the teeth in the user face through the image recognizer <NUM> and synthesize the graphical object or the text comment of the POI information around the mouth or the teeth, to thus make it look like that the user is reciting the POI information.

When the POI information is displayed on the screen, the controller <NUM> controls and processes operations to integrate the POI information and a web search engine. In more detail, when the user selects particular POI information and triggers a web search event, the controller <NUM> controls and processes to search in the web by automatically extracting a search keyword from the particular POI information. The controller <NUM> controls and processes to obtain the name, the category, the area name, or the address information of the corresponding POI from the POI information as the search keyword, and to search the Internet with the obtained information. When there is no area name in the POI information, the controller <NUM> may extract the area name from the address information, and utilize an administrative district of the corresponding location as the area name with the latitude and the longitude.

The communication module <NUM> functions to transmit and receive radio signals of data input and output via an antenna (not shown). The communication module <NUM> may obtain the POI information by sending and receiving radio signals to and from the external device under the control of the controller <NUM>.

The GPS receiver <NUM> obtains the location information indicating the location of the portable terminal; i.e. location coordinates from a GPS system, and forwards the obtained location information to the controller <NUM>.

The geomagnetic sensor <NUM> measures the orientation of the portable terminal under the control of the controller <NUM> and provides the measured orientation information to the controller <NUM>.

The acceleration sensor <NUM> measures and provides the direction, the speed, and the attitude angle of the movement of the portable terminal to the controller <NUM>. While the acceleration sensor <NUM> is used to measure the motion of the portable terminal in this embodiment, other sensors may be used to measure the motion of the portable terminal.

The camera <NUM> converts an analog image signal photographed by a camera sensor to digital data by converting an optical signal detected in the image photographed through the camera sensor to an electrical signal and provides the converted digital data to the image recognizer <NUM>.

The display unit <NUM> displays status information of the portable terminal, numbers and characters, videos, and still images. In more detail, under the control of the controller <NUM>, the display unit <NUM> may display the compass-type map indicating the orientation of the portable terminal and the nearby POI information at a certain position of the screen as illustrated in <FIG>, and display the constellation information corresponding to the current location as illustrated in <FIG>. The display unit <NUM> may also display the distance and the travel time to the particular POI, as illustrated in <FIG>, under the control of the controller <NUM>.

The input unit <NUM> includes a plurality of function keys, number keys, and character keys, and provides the controller <NUM> with input data corresponding to the key pressed by the user or a user's touch.

The storage unit <NUM> contains various programs and data for the operations of the portable terminal. The storage unit <NUM> includes a POI Database (DB) to store the POI information, e.g., name, location (e.g., latitude, longitude), category, area name, address, phone number, detailed information, and related image information of particular POIs. The POI DB may be pre-stored and updated through the network or by an external device. In this embodiment, the storage unit <NUM> includes a constellation DB to contain location, name, origin, and details of constellations.

<FIG> and <FIG> illustrate a process for providing the service using the image recognition and the sensor in the portable terminal according to an embodiment of the present invention.

When the AR application is executed in step <NUM>, the portable terminal conducts the preview by driving the camera in step <NUM>, and drives the acceleration sensor and the geomagnetic sensor in step <NUM>. The acceleration sensor and the geomagnetic sensor may be driven to determine the horizontality of the terminal and the orientation and the movement direction of the terminal.

In step <NUM>, the portable terminal determines whether it is substantially parallel to the ground. The portable terminal may determine whether it is substantially parallel to the ground by obtaining the attitude angle through the acceleration sensor. When the attitude angle with the ground is below the threshold, the portable terminal may determine its horizontality with the ground. In the horizontal state, the portable terminal goes to step <NUM>. In the non-horizontal state, the portable terminal goes to step <NUM>.

In step <NUM>, the portable terminal determines the location of the screen, i.e. determines whether the screen is facing the ground or the sky. When the portable terminal is parallel to the ground and its screen faces the sky, it determines to enter the compass mode in step <NUM> and displays information guiding the orientation of the portable terminal and the nearby POIs. That is, portable terminal displays the compass-type map indicating the POI information in the certain position of the screen using the current location information in step <NUM>. In doing so, the orientation of the portable terminal may be determined through the geomagnetic sensor and represented with an angle in the compass-type map. In an embodiment, the portable terminal may display the map in a certain portion of the screen while sustaining the preview screen. For example, while continuously displaying a, the portable terminal may display the compass-type map indicating the orientation of the portable terminal and the nearby POI information in the center of the screen. Next, the portable terminal returns to the step <NUM>.

When the portable terminal is parallel to the ground and its screen faces the ground, the portable terminal determines to enter the constellation mode in step <NUM> and displays the constellation information on the screen using the current location information in step717. The constellation information displayed on the screen is changed in real time based on the location information of the portable terminal. The constellation information may include the location, the name, the origin, and the detailed information of the constellation. For example, when the user holds the portable terminal in parallel to the ground with the screen facing the ground, the portable terminal may display the constellation based on the current location as illustrated in <FIG>. Next, the portable terminal returns to step <NUM>.

Meanwhile, when the portable terminal is not parallel to the ground in step <NUM>, it obtains the POI information based on the current location information and displays the detailed POI information in the preview screen in step <NUM>.

In step <NUM>, the portable terminal determines whether it is moved backward or forward over the threshold distance, bounced, or snapped. More specifically, through the acceleration sensor <NUM>, the portable terminal determines whether the user pushes or pulls the portable terminal over the threshold distance, whether the user bounces the portable terminal, or whether the user snaps the portable terminal with his/her wrist.

When the portable terminal is moved backward or forward over the threshold distance, bounced, or snapped, it controls the camera <NUM> to zoom in or out by the preset level according to the amount of the movement, the amount of the bounce, or the intensity of the snap in step <NUM>. For example, when the user pulls the portable terminal over the threshold distance as illustrated in <FIG>, the camera <NUM> zooms in by the certain level. When the user pushes the portable terminal over the threshold distance, the camera <NUM> zooms out by the certain level. The zoom in/out degree of the camera <NUM> may vary depending on the amount of the backward or forward movement, the amount of the bounce, or the intensity of the snap of the portable terminal, and may also depend on the number of the movements, the number of the bounces, or the number of the snaps. When the portable terminal moves over a maximum threshold distance, the portable terminal determines the movement according to the walking or the driving of the user and does not adjust the zoom of the camera <NUM>. Next, the portable terminal returns to step <NUM>.

Alternatively, when the portable terminal is not moved backward or forward over the threshold distance, bounced, or snapped, the portable terminal examines whether one of the POIs displayed on the screen is selected in step <NUM>. When a POI is selected, the portable terminal proceeds to step <NUM>. When no POI is selected, the portable terminal goes to block <NUM>.

When a POI is selected, the portable terminal displays details of the selected POI in step <NUM>. In doing so, the portable terminal may determine and display the distance and the travel time to the POI. For example, the portable terminal may represent the travel time to the particular POI in the image displayed on the screen as illustrated in <FIG>. Herein, the travel time may be computed by considering the actual path of the user rather than the straight-line distance from the current location to the corresponding POI. The travel time may be computed using the speed or the average speed of the user during a certain time.

In step <NUM>, the portable terminal determines whether an Internet search function is selected. If the web search function is not selected, the portable terminal goes to step <NUM>. If the Internet search function is selected, the portable terminal conducts the web search with the POI information in step <NUM>. In detail, the portable terminal automatically extracts at least one search keyword from the selected POI information and automatically conducts the Internet search with the extracted search keyword(s). The search keyword(s) may be at least one of the name, the category, the area name, and the address information of the corresponding POI in the POI information.

The portable terminal displays web search results in step <NUM>, and determines whether an event for ending the AR application or an event for returning to the previous state takes place in step <NUM>. When the event for ending the AR application occurs, the portable terminal finishes this process. When the event for returning to the previous state occurs, the portable terminal returns to step <NUM>.

In step <NUM>, the portable terminal determines whether a capture event takes place. When no capture event occurs, the portable terminal returns to step <NUM>. When a capture event takes place, the portable terminal captures the image input from the camera in step <NUM>.

In step <NUM>, the portable terminal determines whether the captured image includes the user's face. When the captured image includes the user's face, the portable terminal synthesizes and displays the graphical object including the POI information around the user's face in step <NUM>. That is, when the captured image includes the user's face, the portable terminal displays the POI information collected in step <NUM> as the graphical object or the text comment and synthesizes over the captured image. In an embodiment, the portable terminal may recognize the mouth or the teeth in the user face and synthesize the graphical object or the text comment of the POI information around the mouth or the teeth, to thus make it appear as though the user is reciting the POI information. Next, the portable terminal enters step <NUM>.

When the captured image includes no user face, the portable terminal synthesizes and displays the POI information over the captured image in step <NUM>. Herein, while the portable terminal may synthesize and display the POI information over the captured image, the portable terminal may determine whether the POI information displayed when the image capture event takes place, and may capture the displayed the POI information together with the image. For example, the portable terminal obtains and displays the image including the POI information as illustrated in <FIG>. Next, the portable terminal goes to step <NUM>.

In step <NUM>, the portable terminal examines whether an event for storing the captured image takes place. When the storage event does not occur, the portable terminal returns to step <NUM>. When the storage event takes place, the portable terminal stores the acquired image in step <NUM> and returns to step <NUM>. In an embodiment, the portable terminal may tag and store the image including the POI information as the image relating to the POI corresponding to the POI information, and thus display the image including the POI information, as illustrated in <FIG>, when the user intends to get the POI information of the corresponding location by executing a related application for guiding the POI.

The portable terminal supporting the AR provides various information, such as map information of the current location, constellation information, and distance and time information, through the service using the image recognition and the sensor. Therefore, it is possible to meet the high expectation and the diverse tastes of the users.

According to aspects of the present invention, the following methods and devices are disclosed.

Although the present disclosure has been described with several embodiments, various changes and modifications may be suggested to one skilled in the art. It is intended that the present disclosure encompass such changes and modifications as fall within the scope of the appended claims. Next, the portable terminal returns to step <NUM>.

Claim 1:
A portable terminal, comprising:
a communication module (<NUM>);
an input unit (<NUM>);
a camera (<NUM>);
a display unit (<NUM>);
a global positioning system (GPS) receiver (<NUM>);
a geomagnetic sensor (<NUM>);
an acceleration sensor (<NUM>);
a storage (<NUM>) including a POI database configured to store POI information comprising location information and related image information of particular POIs; and
a processor (<NUM>) with a posture estimator (<NUM>) and a pedestrian dead reckoning, PDR, determiner (<NUM>) configured to
execute an AR application including driving the camera (<NUM>), the acceleration sensor (<NUM>) and the geomagnetic sensor (<NUM>),
display an image input from the camera (<NUM>) on a screen of the display unit (<NUM>) as a preview image,
obtain location information from the GPS receiver (<NUM>),
collect and display information of point of interest, POI, in the preview image based on the current location information from the storage (<NUM>) or via the communication module (<NUM>),
receive a user input to select a displayed POI via the input unit (<NUM>),
determine and display a distance of an actual path of the user from a location of the portable terminal to a location of the selected POI, rather than a straight-line distance, and an associated travel time based on the location information, the collected POI information and a speed or average speed of the user, wherein the travel time and distance of the actual path are displayed as an AR graphical object overlaid on the preview image.