Abstract:
In accordance with one aspect of the invention, a method of viewing images accessible by an embedded system, the method comprises: generating a trimmed image from an original image accessible by an embedded system, wherein the trimmed image&#39;s dimension are relatively smaller or equal to the dimensions of the original image; generating a thumbnail image from the trimmed image, such that dimensions of the thumbnail image are relatively smaller and directly proportional to the respective dimensions of the trimmed image; and associating the thumbnail image with the original image so that in response to selection of the thumbnail image the original image is displayed on the embedded system&#39;s display unit.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
   Pursuant to 35 U.S.C. § 119(a), this application claims the benefit of earlier filing date and right of priority to the Korean Application No. 2002-19025, filed on Apr. 8, 2002, the content of which is hereby incorporated by reference herein in its entirety. 
   BACKGROUND OF THE INVENTION 
   1. Field of the Invention 
   The present invention relates to image browsing and, more particularly, to a thumbnail image browsing method in an embedded system. 
   2. Background of the Related Art 
   Generally, an image viewer or file browser in a personal computer (PC) has a function for displaying an image file (original image) as a smaller sized image (thumbnail). Such a function is called a thumbnail image browsing feature. 
   Once a user executes the thumbnail image browsing feature on a web page or client system, an image viewer (or file browser) decodes a compressed image so as to generate an original image. The image viewer then generates a thumbnail image from the original image so as to display the thumbnail image on the screen. 
   The above described thumbnail image browsing feature can be executed in a PC having a large screen, a relatively powerful CPU, and plenty of resources (e.g., memory, etc.) with ease. However, an embedded system having limited resources, such as a mobile communication terminal, has the following problems or disadvantages. 
   First, a thumbnail image browsing feature of the related art generates the original image by decoding a compressed image, and then generates the thumbnail image from the original image. Decompression and regeneration of the image are both resource and time consuming processes. A user can visually sense the generation speed of a thumbnail image on a screen, even in a PC. When a plurality of images is generated, the generation speed of the thumbnail image decreases due to the over-utilization of resources required for the purpose of performing the image browsing function. Since a mobile communication terminal has very limited resources, the thumbnail image browsing method according to the related art fails when applied to the mobile communication terminal. 
   Furthermore, in the method of the related art, thumbnail images are generated in predetermined fixed sizes, so that original images with various sizes are generated as thumbnails that are of same fixed size. Referring to  FIG. 1 , the height to width ratio of a thumbnail generated by the method of the related art is incongruent to that of the original image in cases where the dimensional properties of the original image differ from the thumbnail&#39;s predetermined fixed dimensions. Particularly, when the disproportion between the original and the thumbnail image dimensions is large, the thumbnail image fails to be an accurate, or even at times an approximate representation of the original image. This misrepresentation occurs because the thumbnail image is modified disproportionately in one dimension in order to force an exact fit into the predetermined fixed size. 
   In some cases, instead of modifying the image to fit the fixed thumbnail dimensions, the thumbnail image proportionally is similar to the original image, but the border areas of the image are filled to fully cover the areas within the predetermined fixed size of the thumbnail. Such irregular thumbnail images occupy valuable display space on an embedded system. A method and system is needed that can facilitate a more efficient and presentable image browsing feature in embedded system, such as a mobile communication terminal. 
   SUMMARY OF THE INVENTION 
   In accordance with one aspect of the invention a thumbnail image browsing method in an embedded terminal is provided that improves the display speed of a thumbnail image. Also, the method uses the display space more efficiently by providing a uniform-sized thumbnail image of an original image regardless of the size of the original image. 
   Additional advantages, objects, and features of the invention will be set forth in part in the description which follows and in part will become apparent to those having ordinary skill in the art upon examination of the following or may be learned from practice of the invention. The objectives and other advantages of the invention may be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings. 
   In accordance with one aspect of the invention, a method of viewing images accessible by an embedded system, the method comprises: generating a trimmed image from an original image accessible by an embedded system, wherein the trimmed image&#39;s dimension are relatively smaller or equal to the dimensions of the original image; generating a thumbnail image from the trimmed image, such that dimensions of the thumbnail image are relatively smaller and directly proportional to the respective dimensions of the trimmed image; and associating the thumbnail image with the original image so that in response to selection of the thumbnail image the original image is displayed on the embedded system&#39;s display unit. 
   In some embodiments, the thumbnail image is associated with the original image so that any file management operations performed on the thumbnail image is also performed on the original image. The trimmed image is then stored on a storage medium readily accessible by the embedded system and the trimmed image is trimmed on its borders based on the orientation of the original image. Further, the trimmed image is trimmed along its height, if the original image has a width X smaller than a height Y. The trimmed image is trimmed along its width, if the original image has a width X longer than a height Y. 
   In certain embodiments, the trimmed image is trimmed along its height according to the following relationship: if mY&gt;(Y−X), then lower border of the original image is trimmed by Y−X to produce the trimmed image; wherein 0&lt;m&lt;1.28. The method of claim  25 , wherein the trimmed image is trimmed along its height according to the following relationship: if mY&lt;(Y−X), then upper border of the original image is trimmed by mY and lower border of original image is trimmed by mY−X in order to produce the trimmed image, wherein 0&lt;m&lt;1. 
   In another embodiment, the trimmed image is trimmed along its width by m(X−Y) at its right and left border, wherein 0&lt;m&lt;1. The thumbnail image has predetermined fixed dimensions. When, the original image has dimensions X and Y, respectively associated with the width and height of the original image, the trimmed image has dimension X 1  and Y 1 , respectively associated with the width and height of the trimmed image, such that if X&gt;Y then X 1  and Y 1  are trimmed so that X 1 =Y and Y 1 =Y. 
   Further, if the original image has dimensions X and Y, respectively associated with the width and height of the original image, the trimmed image has dimension X 1  and Y1, respectively associated with the width and height of the trimmed image, such that if X&lt;Y then X 1  and Y 1  are trimmed so that X 1 =X and Y 1 =X, for example. 
   It is to be understood that both the foregoing general description and the following detailed description of the present invention are exemplary and explanatory and are intended to provide further explanation of the invention as claimed. 

   
     BRIEF DESCRIPTION OF THE DRAWINGS 
     The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this application, illustrate embodiments of the invention and together with the description serve to explain the principle of the invention. 
       FIG. 1  is a diagram illustrating a thumbnail viewer, in accordance with one or more embodiments of the invention; 
       FIG. 2  illustrates a flowchart of a method of browsing a thumbnail image, in accordance with one or more embodiments of the invention; 
       FIG. 3  illustrates a flowchart of a method of generating a thumbnail image in accordance with one or more embodiments of the invention; 
       FIGS. 4A-4C  illustrate diagrams of a square thumbnail image being generated from an original image in accordance with one or more embodiments of the invention; and 
       FIG. 5  illustrates a flowchart of a method of displaying a thumbnail image in accordance with one or more embodiments of the invention. 
   

   DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
   By way of example, this invention in accordance with one or more embodiments is described as applicable to a mobile communication system. This application, however, should not be construed as limiting the scope of the invention to such systems only. The methods and features disclosed herein may be applicable to all other embedded and non-embedded systems that incorporate a display unit, such as cameras, video camcorders, personal digital assistants and other similar devices. 
   In order to realize thumbnail image browsing in a system with limited resources, the present invention generates and stores an additional thumbnail image whenever an original image is inputted. The stored thumbnail image is then decoded and displayed instead of decoding the original image. The present invention manages the original image and a corresponding thumbnail image in a synchronized fashion. That is, any operation performed on the thumbnail image would be also performed on the corresponding original image and vice versa. 
   For example, if the original image is generated and erased, the thumbnail image is generated and erased too. If the original image is moved to another directory or its file name is amended, the directory or file associated with the thumbnail image is modified accordingly. 
   Referring to  FIG. 2 , when an image receiving event is generated (e.g., image download, image photographing, e-mail reception, etc.) a mobile communication terminal (hereinafter referred to as “terminal”) stores a received original image (at state S 100 ), and, from the original image, simultaneously generates and stores a thumbnail image having a predetermined size (at state S 110 ). 
   In one or more embodiments, file names and storage locations of the original and thumbnail images are set up so as to be synchronized with each other. For example, if the file name of the original image is “Fred.jpg”, the thumbnail image is set up with “s_Fred.jpg” as its file name. Obviously, other implementations are possible. If a storage directory (e.g., main directory) of the original image is “\Image\”, a storage directory (e.g., sub-directory) of the thumbnail can be “\Image\sImage\”, for example. In some embodiments, the original image may not even be stored on the embedded system, but may be accessible through a pointer to the location of storage (e.g., a local area network server connected to the embedded system via wired or wireless communication means). 
   When a user activates the thumbnail image browsing feature, the terminal decodes the file stored in the subdirectory instead of the original image so as to display the thumbnail image on a screen (at states S 120  and S 130 ). If the user selects a corresponding thumbnail image in the course of image browsing, the terminal decodes a file stored in the main directory so as to display the original image (at states S 140  and S 150 ). 
   Referring to  FIG. 3 , when an image is received by the terminal, the terminal stores the received original image in a first director, for example, a main directory (at state S 10 ). For illustration purposes, the file name and the main directory of the original image are “Fred.jpg” and “\Image\”, respectively. 
   Once the original image is stored in the main directory \Image\, the terminal determines whether a thumbnail file exists in a second directory, for example, a sub-directory of the main directory \image\ (at state S 11 ). For example, the file name and sub-directory of the thumbnail image may be “s_Fred.jpg” and “/Image/sImage/”, respectively. 
   If the thumbnail file s_Fred.jpg is not stored in the sub-directory, the terminal generates a corresponding thumbnail image from the original image. If the thumbnail file s_Fred.jpg already exists in the sub-directory, the terminal may, for example, output an “overwrite message” to the user and generate a new thumbnail image if and when an overwrite storage is approved (at states S 12  and S 13 ). 
   In order to generate a thumbnail image, the original image can be divided into multiple forms, such as an image having a length Y longer than a width X (i.e., Y&gt;X), an image having a length Y shorter than a width X (i.e., Y&lt;X), and a square image (i.e., Y=X), for example. In accordance with one aspect of the invention, an image having a length Y longer than the width X (i.e., Y&gt;X) can be a portrait, for example. A landscape picture, for example, may be in a format having a width X longer than a length Y (i.e., Y&lt;X). 
   Therefore, in accordance with one embodiment of the present invention, as shown in  FIG. 4A , an image having a length longer than its width may be trimmed on its upper and lower borders so as to generate a trimmed image. Alternatively, in accordance with another embodiment, the lower portion of the image may be trimmed to generate the trimmed image. In certain embodiments, the trimming is performed so that the trimmed image is of an exact predetermined size (e.g., a square). For example, referring to  FIG. 4A , in one embodiment, if X represents the width and Y represents the length of the original image, the image dimension are trimmed based on the following relationships where “m” is a variable that is assigned a certain value:
         a) if mY&lt;(Y−X) then the upper and lower borders are trimmed by mY and mY−X, respectively; and   b) if mY&gt;(Y−X) then the lower border only is trimmed by Y−X;       

   In one embodiment, m is a value between 0 and 1 (i.e., o&lt;m&lt;1). For example, m may be equal to “0.05” (i.e., m=0.05). In other embodiments m can be any other value suitable for trimming the original image. 
   If an image has a width that is longer than its length, since important objects generally lie at the central portion of the image, in one embodiment, right and left portions of the image are trimmed so as to generate a square image as shown in  FIG. 4B . The trimmed image, as shown in  FIG. 4C , undergoes no further processing, in one embodiment of the invention. In other embodiments, however, it may be processed further as provided below. 
   For example, once the trimmed image is generated, the terminal processes the trimmed image so as to generate a thumbnail image, and then stores the generated thumbnail image in a sub-directory. 
   Referring to  FIG. 5 , when a user executes the terminal&#39;s thumbnail browsing feature for a specific file, such as “Fred.jpg” (at state S 20 ) the terminal checks whether a thumbnail file (s_Fred.jpg) exists in a corresponding sub-directory (/Image/sImage)(at state S 21 ), to verify any possible errors. 
   If the thumbnail file is not stored in the corresponding sub-directory, a new thumbnail image is generated (at state S 22 ). If the thumbnail file exists, the file (“s_Fred.jpg”) is decoded so as to display the thumbnail image(at state S 23 ). 
   For illustration purposes, the present invention is described with reference to processing a single image file. It should be noted, however, that the present invention can be applied to a plurality of image files as well. 
   The described browsing method allows an embedded system with limited resources to adequately handle the processing of image files that have been reduced in a more efficient and practical manner. 
   Further, since the present invention decodes the thumbnail image for display instead of the original image, processing time for image generation is substantially reduced. This allows for the thumbnail image to be displayed faster and stored more efficiently. 
   Moreover, the present invention generates a thumbnail image from the original image in such a manner that provides a user with a better image browsing experience, where the display area is used more efficiently and effectively. 
   The forgoing embodiments are merely exemplary and are not to be construed as limiting the present invention. The present teachings can be readily applied to other types of apparatuses. The description of the present invention is intended to be illustrative, and not to limit the scope of the claims. Many alternatives, modifications, and variations will be apparent to those skilled in the art.