[go: up one dir, main page]

HK1073365B - Network image view server using efficient client-server filing and caching architecture - Google Patents

Network image view server using efficient client-server filing and caching architecture Download PDF

Info

Publication number
HK1073365B
HK1073365B HK05105820.0A HK05105820A HK1073365B HK 1073365 B HK1073365 B HK 1073365B HK 05105820 A HK05105820 A HK 05105820A HK 1073365 B HK1073365 B HK 1073365B
Authority
HK
Hong Kong
Prior art keywords
view
server
tiles
image
tile
Prior art date
Application number
HK05105820.0A
Other languages
Chinese (zh)
Other versions
HK1073365A1 (en
Inventor
塞西尔.V.霍恩贝克三世
约翰.C.克罗宁
Original Assignee
E嘉资金公司
Filing date
Publication date
Priority claimed from CNB988135752A external-priority patent/CN1161698C/en
Application filed by E嘉资金公司 filed Critical E嘉资金公司
Publication of HK1073365A1 publication Critical patent/HK1073365A1/en
Publication of HK1073365B publication Critical patent/HK1073365B/en

Links

Description

Method and apparatus for identifying and delivering images from computer network file server
This application is a divisional application of the chinese patent application entitled "method and apparatus for identifying and delivering images from a computer network file server", filed on 12/2/1998, application number 98813575.2.
Technical Field
The present invention relates to workstation views of digital documents stored on web servers, and more particularly to large digital document views employing a client-server architecture.
Background
Currently, the methods used by workstations in a network environment to view digital document images employ dedicated workstation application software to access a network image file server. The application transmits a copy of the entire image file from the image file server to the network client workstation for viewing. This approach has many limitations, including: the network use efficiency is not high; the software purchase cost of each workstation is high; the software management cost of each workstation is high; the computational requirements on the workstation are high; dedicated software is only applicable to a limited number of workstation types. Other web image browsers can provide browsing functionality using more optimized image transfer protocols, but can only be implemented using proprietary protocols and proprietary workstation software.
Disclosure of Invention
It is an object of the present invention to provide a method for obtaining graphical images from a web server for viewing at a computer workstation that does not require specialized operating software.
Another object is to provide a method which enables an efficient use of the network, so that the image can be displayed at a faster speed after the request from the workstation.
It is another object to provide such a method that utilizes a buffering mechanism such that when many clients access the server simultaneously, the load of the network file server is balanced and the response time to a single client is faster.
Another object is to minimize the computational resources required by the client workstation.
It is another object to provide an apparatus for storing graphic images, requesting portions of the stored graphic images from a storage device, and quickly and efficiently displaying the images on a workstation.
It is a further object to provide a computer program which facilitates the requesting of parts of a graphical image stored on a network server and the displaying of these parts on a workstation.
These objects, and others which will become apparent from the following description, are achieved by the present invention which comprises, in one aspect, a method of identifying and delivering graphical images from a computer network file server, comprising providing a network file server storing digital document image files, said server being capable of receiving a request in Uniform Resource Locator (URL) code from a Web browser, identifying the requested image file and format selection, organizing the requested view into a view tile, and transmitting the view tile HTML code to the requesting Web browser.
Another aspect of the invention includes an apparatus comprising a computer network server capable of storing digital document image files, programmed to receive a request from a client Web browser in the form of a URL code specifying a view indicating the image file and a format, to compose the requested view, and to send HTML code for the processed view to the client Web browser for display.
Another aspect of the present invention is a computer program recorded on a magnetic or optical medium, for use on a network server, comprising code for performing the functions of: interpreting a workstation's HTTP request as a particular view of a digital document image file stored in memory, retrieving the digital document image file, laying out view tiles corresponding to the requested image view, computing the HTML code for the view tiles, and transforming it into a form that can be transmitted from the server to the workstation.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments of the invention and together with the general description, serve to explain the principles of the invention.
FIG. 1 is a system diagram illustrating the relationship of components of the system and the image view server;
FIG. 2 is a flowchart of the steps performed by the system to request, compose, and display an image view;
FIGS. 3A and 3B illustrate view tiles determined according to a view scale;
FIGS. 4A and 4B illustrate a view tile laid out for an initial image, and a view of the image after alteration;
FIGS. 5A and 5B illustrate a view tiled web browser display of an initial view, and a modified image view corresponding to FIGS. 4A and 4B;
FIGS. 6A and 6B illustrate a view tile pre-computed by the background view composer;
FIG. 7 is a high level flow diagram of a foreground view composer;
FIG. 8 is a flow diagram of the view builder component of the browse orchestrator;
FIG. 9 is a flow diagram of the data output component of the view composer;
10A, 10B and 10C together constitute a flow diagram of a view tiling buffer garbage collector.
Detailed Description
Reference will now be made in detail to the present preferred embodiments of the invention, an example of which is illustrated in the accompanying drawings. The preferred embodiment is a server PC comprised of an Intel Pentium Pro200MHz processor, at least 128MB RAM, ultra wide fast SCSI disk controller, at least 4GB hard disk space, and LAN/WAN/Internet network interface controller. The Server runs the Windows NT Server version 4 operating system, including the NT file system, Microsoft Internet Information Server version 3, and the Web Picture Server software. The server and client are configured via TCP/IP network protocols to support the HTTP (Web) protocol. No other software is required on the client than the Web browser. Preferred Web browsers are Internet Explorer 3.0 or Netscape 3.0 and higher.
Referring first to FIG. 1, a network comprising client workstations 10 and 20 is connected via a network connection to a network image view server 100 comprising a network server interface, preferably a web server 30 using the Hypertext transfer protocol (HTTP), a request broker 40, a foreground view composer 50, a view tile buffer 60, a background view composer 80, a garbage collector 70, and a document storage device 90 containing image files.
The network image view server, i.e., client workstation or "workstation" 100, may be implemented on a computer, for example, a computer configured with a processor, I/O, memory, disk storage, and a network interface. The network image view server 100 is configured with a network server operating system and Web server software 30 that provides network HTTP protocol links to the client workstations 10 and 20. A typical network includes a number of workstations served by one, and sometimes a plurality, of network servers that act as repositories to maintain files accessible to the workstations.
In operation according to an embodiment of the method of the present invention, using a Web browser on a client workstation, the scale and area of the image view 110 (FIG. 2) requested by the user is specified by a Uniform Resource Locator (URL) code specifically formatted in the HTTP language, which the Web server may decode into a request and pass to the image view layout software, which specifies the image file to be viewed, the scale of the view and the area of the image to be viewed. The network graphics server sends HTML data to the client with pre-computed hyperlinks, and sends specific requests to the server by clicking on regions of the image to deliver different regions of the map or to change the resolution of the image. The HTML formed by such a request also contains pre-computed hyperlinks of other choices that the user may use.
The code is sent over the network to a Web server, where Web server software interprets the request 120 and transmits the browsing request URL to the foreground view composer software via a Common Gateway Interface (CGI) that can handle HTTP requests external to the Web server software, instructing the request broker 130 to get a specific request view whose scale and area conform to the URL's specifications.
The foreground view composer initializes 140, and after retrieving 150 the requested view from the web server memory, the requested view is composed. The foreground view composer software interprets the view request, calculates which view tiles are required for the view, generates the view tiles 160 required for the view, and then generates a hypertext markup language (HTML) output file that explains the view composition to the Web browser, unless the necessary view tiles to satisfy the request have been calculated and stored in the cache of the workstation, at which point the Web browser resumes the already calculated tiles. In both cases, the foreground view composer formats the output 170 and then initializes the background view composer 180, which transmits the formatted output to the WEB server, which then transmits the formatted output over the network to the WEB browser 200 on the requesting workstation 10, requesting the browser to display any view tiles 210 that have been cached, as well as the just-computed view tiles 220 fetched from the server.
The generation of view tiles 160 is handled by an image tiling routine that divides a given page being processed as an image into smaller image cells (fig. 3A), referred to as view tiles a1, a2, B1, etc. (or simply tiles within the scope of a view image server). These tiles are computed for different resolutions of a given image (fig. 3B) on the server as requested by the URL received from the workstation browser software. The use of tiles allows for an efficient caching 60 of image data for the browser 10 on the image view server, as well as on the client workstation.
The preferred view tile format is a 128 pixel by 128 pixel GIF image file. The GIF image file is preferable in view of compatibility of the WEB browser and the size of the image file. The GIF image file format is the most widely supported graphical WEB browser, thus maximizing client compatibility of the image view server. The GIF image format has desirable low image data compression loss characteristics, reasonable data compression ratios, color and gray scale support, and a relatively small image header that is associated with the selection of the size of the view tile. If the original image data size is 2048 bytes for black and white view tiling, typical GIF compression of 4 to 1, the compressed data for view tiling is about 512 bytes. For many view file formats, such as TIFF and JPEG, if the image is small, such as a view tile, the size of the image file header (and other overhead information, such as data indices) may be comparable to the image data itself; whereas the GIF header for black and white images adds only a few 31 bytes to the GIF image file. Another view tiling format, such as Portable Network Graphics (PNG), may also be employed, especially because of the increasingly wide native browser support for this format.
The 128-pixel view tile size is a good compromise of view tile granularity and view tile overhead. The 128-pixel view tiling display granularity determines the minimum view offset distance (planar distance) that can be achieved by standard graphics WEB browsers and level 2HTML formatting. It is capable of adjusting the view position on a 0.64 inch grid when viewing a 200 pixel per inch image at a1 to 1 ratio. The reduction of view tiling size makes view positioning grid more delicate, but the problem is that view tiling overhead becomes large.
A view tile typically presents approximately 128 x 128 byte image files. If the displayed views are reduced to 2 to 1, then each view tile represents a 256 × 256 pixel area of the image file scaled down to 128 × 128 pixels. For each possible scale factor, there is a set of tiles to display the view. The benefit of fixed-size view tiling is that the server and client can use the caching mechanism more efficiently. For example, consider a 512 pixel by 512 pixel view. Without tiling, the view consists of a single GIF file displayed by the WEB browser, and if the user requires the view to be offset by 256 pixels, a new 512 x 512 GIF image needs to be generated and transmitted to the WEB browser. With tiling, the first view would require 16 view tiles to be computed and passed to the WEB browser for display. When a view request is issued that is offset by 256 pixels, only 8 view tiles for a 256 by 512 pixel region need to be computed. Furthermore, only 8 new view tiles need to be transferred to the WEB browser, since the offset view will reuse the 8 view tiles available in the WEB browser cache. The use of tiles halves the calculations and data transfers in this example.
The use of view tiles enables the image view server to efficiently pre-compute the view tiles that may be needed for the next view request. The image view server background view composer calculates the view tiles around the most recent view request in preparation for the offset view request. If an offset view is requested, the foreground view composer can use pre-computed view tiling, so that there is no need to compute the time for a new view tile for that view. For frequently accessed images, it is a good chance that the view tiles for the view are already present in the view tile cache, since the view tiles maintain the most recently accessed view tiles. Because millions of view tiles may be generated, eventually exceeding the storage capacity of the image view server, the view tile cache garbage collector eliminates the least recently accessed view tiles when the maximum storage allocation or minimum storage free space limit is reached.
The number of tiles required to process a view of a given view size is inversely proportional to the square of the view tile size. The number of view tiles required for 64-pixel view tiles is 4 times the number required to process the same view area and is therefore less preferred. View tiling overhead exists in the amount of data and the amount of network transactions. The data size overhead comes from the image file header size, as part of the total image file size described above, and the data required to make view tile references in the HTML text file. Network transaction overhead increases with small-view tiles because each view tile requires network transaction. Smaller view tile sizes require an increased amount of network transactions, slowing down view processing response speed.
The HTML output file generated by the foreground view composer is transmitted to WEB server software and transmitted to a WEB browser. A graphical WEB browser uses the HTML output of an image view server, acting as an image browser, to lay out and display an array of image tiles that form an image view. The HTML page data lists the size, location and hyperlinks for each view tile that needs to be displayed. The view tiles are stored in the GIF image file format, which can be displayed by all common graphical WEB browsers. If the view tiles that need to be displayed exist in the local cache, the WEB browser retrieves the view tiles from the local cache, otherwise from the image view server.
The request broker 40 receives the original request from the web server interface 30, interprets the request, communicates with other system components, and determines what appropriate response should be given. It also decides when the response is returned. In a preferred embodiment, the request broker is implemented by a WEB server Common Gateway Interface (CGI). Other WEB server oriented Application Programming Interfaces (APIs) may also be employed.
To support tiling and caching of many images on the same image view server, the identity of each view tile must be unique and can be referenced by the WEB browser via a view tile URL. This uniqueness is achieved by a combination of storage location and view tile naming. Uniqueness between images is achieved by having a separate memory subdirectory for each image in the view tile cache. View tile uniqueness of each scale view is achieved by each view tile filename. The view tile name preferably takes the form:
V<SCALE><TILE_NUMBER>.GIF
the < SCALE > value is a 2-string generated from the basic 36 encoding of the view SCALE number represented in each 256 sections. The < TILE _ NUMBER > value is a 5 string generated by the basic 36 encoding of the tiled display NUMBER determined by the following equation:
TILE_NUMBER=TILE_ROW*IMAGE_TILE_WIDTH+TILE_COLUMN
in the above calculation, the TILE _ ROW and TILE _ COLUMN values start from 0. The second tile display of the first column of the view, for example, in a ratio of 2: 1, would be named in the preferred protocol: v3j00001.gif
The full URL reference for the second tile display of the first column of image number 22 on the image view server is:
http://hostname/view-tile-cache-path/000022/V3J00001.GIF
in addition to the view tile location and view scale, other view attributes may also be encoded as part of the view tile memory location or view tile name. These properties are view rotation angle, view x mirror, view y mirror, inverted view. The view tile name with these additional view attributes may be encoded as:
V<SCALE><TILE_NUMBER><VIEW_ANGER><X_MIRROR><Y_MIRROR><INVERT>.GIF
the VIEW _ ANGLE is in the form of a < ANGLE >. X _ minor, Y _ minor and INVERT encoded by a single character X, Y and I, respectively. An example is:
V3J00001A90XYI.GIF
the WEB server 30 is configured to identify the above-mentioned specifically formatted request Uniform Resource Locators (URLs) that need to be processed by the image view server request broker 40. This is accomplished by the request broker 40 associating with a URL path or document file extension.
The foreground view composer 50 interprets the view request command 140 to decide what views need to be composed. The view request may be absolute, specifying a scale and position, or relative, specifying a change in scale and position relative to a previous view, or implicit, selecting a view according to system defaults.
In the view calculation software routine 150 of FIG. 7, the command interpreter 151 receives the view request, determines 152 what scale of view tiles are required for the view and what view tiles are required within the cells of the view 150 (FIG. 2), generates view tiles 153, and produces a formatted view output 154.
The view tile generator routine 160 completes the actual generation of the view tile according to the preferred steps shown in fig. 8. The view tile generator receives information calculated for a view as to what view tiles are needed for that view. It accesses the records in cache 80 to determine which tiles have been generated and reside in the cache. If the required view tile is in the cache, its last access time is updated to prevent the cache garbage collector from deleting the view tile. If the desired view is not in the cache, then the view tile generator generates a view tile from the image files 90. The view tile generator employs a software image library that supports a number of digital document file formats, including black and white scanned images, gray scale scanned images, color scanned images, and a number of rich-content non-scanned formats, such as Adobe PortableDocument Format (PDF), PostScript, HPGL, and the like. In processing black and white image data, the use of image library scale gray scale adjustment can provide a more visible rendition of the resulting image.
For example, a particular view request may include files B2, C2, B3, and C3 (FIGS. 4A and 5A). If after browsing these tiles, the client decides that what is needed is the remaining view, then the server sends tiles A2 and A3 (FIGS. 4B and 5B). This assumes that the client retains other tiles in the cache. If the client does not cache, tiles A2, A3, B2, and B3 are sent.
The generated formatted output is directed to the view tiles that are required to display the full view. The formatted output uses HTML to describe the order, location, and hyperlinks of each view tile that needs to be displayed. The output formatter also uses other optimizations to detect blank view tiles, replacing hyperlinks to image-specific blank tiles with common blank tile references. This allows the transmission of the blank tiles only once and there is no need to transmit any blank tiles once the WEB browser has cached the common blank tiles.
The foreground view composer 50 controls the background view composer 80 to stop the background view when the foreground view is being composed and then start the background view with the latest view information after the new view 180 is composed.
The background view composer 80 is preferably programmed to optimize system performance by precomputing, i.e., composing, the view tiles needed between view requests sent to the server. The tiles that need to be pre-computed are the tiles around the nearest view, in the same scale as the nearest view. The pre-computed order of view tiling is the clockwise spiral order of the most recent views. The number of pre-computed view tiles around the view is preferably limited by system configuration parameters to prevent unnecessary generation of view tiles that may be unnecessary. Once the maximum number of pre-computed view tiles for the nearest view scale is reached, the pre-computation of another view scale may continue. The background view composer is preferably programmed to operate at a low priority, minimizing interference with more important system tasks.
Fig. 6A shows the operation of the background view composer. Assuming that a given view requested by a client requires delivery of tiles C3, C4, D3, and D4, after delivering these tiles to a WEB browser, a background view composer routine in the server program starts at E4 and generates these surrounding tiles by composing or calculating the tiles around these tiles. As long as the client continues to browse the page at this scale factor, the server will calculate the view tile outward expansion for the last requested tile. FIG. 6B illustrates another request issued by the client after generating two rotations of the tile. This request requires tiling G3, G4, H3, and H4. At the beginning of the pre-computation of the request, it would generate tiles G5, H5, I5, I4, I3, I2, H2, and G2 in the first rotation, but it would not attempt to generate tiles in column F.
Preferably view tile cache garbage collector algorithm 70 manages the use of view tile storage (fig. 10A, 10B, 10C). The garbage collector maintains the view tile cache 60 (fig. 1) such that view tile cache usage is below a storage limit and storage free space is above a free space limit. The garbage collector continuously scans the cache, accumulating the size and time statistics of the view tiles. If the cache size needs to be reduced, the garbage collector chooses to delete the least recently accessed view tiles until the cache size is within the limit. Garbage collectors operate at low priority, minimizing interference with more important system tasks. The storage free space limit is designed as a security limit that prevents the system from running out of storage. The checking of the free space limit is done periodically and if the limit is exceeded, the garbage collector becomes an emergency system task, running at high priority until the storage free space is greater than the free space limit.
The digital document file may be stored on a WEB server or other server in the network. The image files are typically managed as digital documents having attribute information that is stored in the documents of the document repository 90. The digital document management system may operate independently or in conjunction with the image view server software. The digital document file may be a scanned image file or a non-scanned document file. If the digital document file is in a non-scanned format, it is processed into a black and white, grayscale, or color scanned image for viewing.
The graphical WEB browser on client workstation 10 receives HTML data from image view server 210 which contains hyperlinks to view tiles in cache 60 that need to be displayed and formatted to describe the appearance of the tiles to generate the image view. The WEB browser must initially retrieve view tiles 220 for the view from the image view server. After the initial view, the WEB browser preferably retrieves the previously displayed view tile from the WEB browser local cache 210, rather than from the server, once the view overlaps with the previous view of the same scale.
The performance and usability of document browsing may be improved by using a progressive display of tiled display images. With an image file format that allows a rough view of the image to be displayed while downloading other portions of the image content, a rough view of the document can be seen relatively quickly.
Because most WEB browsers only transmit 1 to 4GIF images at a time, it is not usual to progressively display all the view tiles in the view queue at the same time. Thus, it is desirable to implement a progressive display, providing an algorithm on the client to accept an alternative data format that allows the entire document viewing area screen to take advantage of the progressive display, and still have the benefits of tiling and caching on the client. This may be accomplished by a WEB browser environment that employs algorithms written in Java, JavaScript, or ActiveX technology. With client software enhancement of the client browser, alternative view tiling formats and view compression algorithms can be employed to provide further improvements in performance. An obvious example is the use of the optimized Portable Network Graphics (PNG) format, which requires the image view server and client to transmit only one shared header, common to all view tiles, and then send the low resolution compressed image data for each view tile, followed by the full resolution image data for each view tile.
In addition to the view tile array displaying the requested view, the HTML data includes hyperlinks that generate toolbars that provide the user with a way to send requests to the server to change the current view, including scaling the view, changing the view area, or changing the view size. Such hyperlinks will point to the current view and also contain opcodes that require the image view server to compose a new view based on the user-selected hyperlink.
The method, apparatus and software clauses of the present invention provide an improved client server architecture for accessing an image view server using a graphical WEB browser that enables efficient use of the network. With image tiling and caching based on the preferred method, a relatively small amount of data need only be transmitted when the user selects a new view of an image that has already been received and viewed. The server sends the requested image to the workstation in the requested format and then allows the view to be viewed based on the local copy of the image file. The image view server can provide a better solution by: a low cost graphical WEB browser is utilized to enable a workstation to access a network image view server, and a graphical WEB browser provides an image view displayable on the workstation. For example, if the size of an image file is scanned with an E-size engineering drawing of 200 pixels black and white per inch, the size is 8 megabytes. With common data compression, image files can be reduced to 250 kbytes. The transfer of the image file to the workstation application for viewing takes 83 seconds (250KB/3 KB/sec) using a low bandwidth 28.8 kbaud modem network connection with a throughput of about 3K per second. With the image view server, only image data to be displayed is transmitted. A typical view of 896 by 512 pixels consists of a 7 by 4 array of 128 pixel by 128 pixel view tiles. The black and white view tiles are transmitted in a compressed format, which typically generates 512 bytes each, with about 14 kbytes (0.5KB x 28 tiles) for the entire view, which requires about 4.8 seconds (14KB/3 KB/second) for transmission. The view browsing method can provide better response for users, and has lower requirement on network connection. The local area network typically uses 10 mbits per second media, so the efficiency improvement of the image view server is not significant. However, if a 10 mbit/s network is shared by 100 users, the average bandwidth per user is only about 12.5 kbytes/s, and thus the efficiency of the image view server remains considerable. Another benefit of the image view server is that the data transfer size remains constant even if the size of the view image increases. If the image file size is 4 times larger than the previous example due to a larger image, a higher resolution or a lower compression rate, the network load of the image view server will remain unchanged, whereas the network load of the conventional image browser will increase 4 times as much as it was.
The present invention reduces software purchase costs because graphical WEB browsers are common inexpensive workstation applications, and the expense of a WEB browser is typically the cost required for a workstation to be used for other purposes, and in many cases is contained in a workstation operating system. The cost of the server software may be shared by hundreds of client workstations.
Software management costs can be reduced by graphical WEB browser and server software, the former being a common workstation application that has already been managed, thereby eliminating the need for additional dedicated workstation software applications, the latter requiring management only on a central server, rather than on a per workstation basis.
Graphical WEB browsers are provided on all conventional workstation types, as well as on other devices such as notebook computers, palm top computers, network computers, and WEB television adapters, thereby providing a widely adopted solution.
It will be apparent to those skilled in the art that various modifications and variations can be made in the network view image server and image view server method without departing from the scope or spirit of the invention. Other embodiments of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the invention being indicated by the following claims.

Claims (37)

1. A method for identifying and delivering graphical images from a computer network file server adapted to store at least one digital document image file and to receive a view request in the form of a URL code from a computer, said method comprising:
identifying an image file and format selections from the requested view, the formats including an opcode for selecting an updated view and a view template for determining presentation of the view;
in response to receiving the request for the view and identifying the image file and the format selection, retrieving the digital document image file and tiling the requested view into a display pane of views corresponding to the requested view of the image;
HTML code for the view tile is calculated and transmitted to the requesting computer.
2. The method of claim 1, wherein the view request identifies an image file, a tile number in the image file, a format including one or more of a position, a scale, a rotation angle, an x-mirror, a y-mirror, a reverse, a region, an opcode to select an updated view, and a view template to determine a presentation of the view.
3. The method of claim 2 wherein the HTML code sent for view tiling causes the requesting computer to display the requested view of the requested graphic image in the requested format.
4. The method of claim 2 wherein the array of tiles selected from the view tiles to satisfy the view request is computed by a network file server and transmitted over a network to the requesting computer in HTML and image file format.
5. The method of claim 4 wherein the web file server generates an HTML output file listing the size, location and hyperlinks of the view tiles that need to be displayed.
6. The method of claim 4 wherein the view tiles are stored in an image file format, each view tile being displayed by the requesting computer.
7. The method of claim 6, wherein said image file format is at least one of GIF, JPEG, PNG, and TIFF format.
8. The method of claim 1, wherein the network file server calculates at least one view tile adjacent to the array of view tiles transmitted to the requesting computer during a period of time after the array of view tiles is transmitted, the adjacent view tiles being stored on the network file server.
9. The method of claim 8, wherein the network file server sends subsequently computed adjacent view tiles in response to a view request for previously transmitted adjacent view tiles of the array of view tiles.
10. The method of claim 2, wherein the requesting computer is adapted to cache the received view tiles and to retrieve the one or more cached view tiles in response to generating a view request comprising the one or more cached view tiles.
11. The method of claim 2, wherein the view tiles are 128 pixel by 128 pixel image files.
12. The method of claim 2, wherein the view tiles are 256 pixel by 256 pixel image files.
13. The method of claim 2 wherein the view tiles are 512 pixel by 512 pixel image files.
14. The method of claim 2, wherein each view tile is identified by the server by a unique URL, the URL including the storage location and the view tile naming data.
15. The method of claim 2, wherein the position is at least one of absolute, relative, and implied.
16. The method of claim 14, wherein the view tile naming data comprises a view scale.
17. The method of claim 1 wherein the network file server comprises a WEB server implemented by a WEB server common gateway interface.
18. The method of claim 1, wherein the requesting computer is configured to run an applet or script to improve communication with the network file server to reduce the amount of data transferred.
19. The method of claim 1, wherein the requesting computer and the network file server are adapted to minimize an amount of redundant data transmitted from the network file server to the requesting computer.
20. The method of claim 1, wherein the network file server samples the higher resolution images to send the lower resolution images to the requesting computer.
21. The method according to claim 1, wherein the monochrome gray scale, or color image file, is stored on a network server and transmitted to the requesting computer.
22. The method of claim 1, wherein the non-raster image file is rasterized by a network file server.
23. The method of claim 1, wherein the image file is stored on a second server, retrieved by the network file server when needed, and temporarily stored.
24. The method of claim 1, wherein the requesting computer comprises at least one of a workstation, a notebook computer, a palm top computer, a network computer, and a web television adapter.
25. The method of claim 1, wherein the image file comprises at least one of a raster image format and a non-raster image format.
26. The method of claim 25, wherein the raster image format comprises at least one of a monochrome raster image, a gray scale raster image, and a color raster image.
27. The method of claim 25, wherein the non-raster image format comprises at least one of an Adobe portable document format, an Adobe PostScript format, and a hewlet-Packard graphic library format.
28. A method for identifying and delivering graphical images from a computer network file server, said network file server storing digital document image files, the method comprising:
receiving a request in the form of a URL code from a Web browser;
identifying the requested image file and format selection;
grouping the requested views into a view tile array; and
transmitting HTML code for view tiling to the requesting Web browser;
wherein within a time period after the transfer of the array of view tiles, a view tile adjacent to the array of view tiles transferred to the Web browser to satisfy the request described by the URL is calculated by the server and stored on the server in a cache to cope with future requests to be received from the Web browser; and wherein view tiles adjacent to the array of view tiles transmitted to the Web browser are computed by the server in an order that spirals outward, clockwise or counterclockwise, from the array of transmitted view tiles.
29. A method for identifying and delivering graphical images from a computer network file server, the method comprising providing a network file server on which digital document image files are stored, said server being adapted to receive requests in the form of URL codes from a Web browser, identify the requested image files and format selections, compose the requested views into a grid of view tiles, and transmit HTML code for the view tiles to the requesting Web browser; wherein said URL view request identifies the image file, tile display numbers in the image file, and a format including one or more of position, scale, rotation angle, x-mirror, y-mirror, inversion, region, opcode to select an updated view, and view template to determine the presentation of the view, and wherein said transmitted HTML code for view tiling causes the requesting Web browser to display the requested view of the requested graphical image in the requested format; wherein each view tile is identified by a server having a unique URL, the URL including a storage location and view tile naming data; wherein the URL includes identification data for respective scales of views by file names of respective views tiled; and wherein the view TILEs are named in the format of V < SCALE > < TILE _ NUMBER > < IFF >, wherein the < SCALE > value is a 2-character string formed by the basic 36 encodings which are the SCALE NUMBER of views per 256 of the representation portion.
30. A method for identifying and delivering graphical images from a computer network file server, the method comprising providing a network file server on which digital document image files are stored, said server being adapted to receive requests in the form of URL codes from a Web browser, identify the requested image file and format selection, construct the requested view into a display grid of view tiles, and transmit HTML code for view tiles to the requesting Web browser; wherein said URL view request identifies the image file, tile display numbers in the image file, and a format including one or more of position, scale, rotation angle, x-mirror, y-mirror, inversion, region, opcode to select an updated view, and view template to determine the presentation of the view, and wherein said transmitted HTML code for view tiling causes the requesting Web browser to display the requested view of the requested graphical image in the requested format;
wherein each view tile is identified by a server having a unique URL comprising a storage location and view tile naming data;
wherein the URL includes identification data for each scale of the view in the filename of each view tile;
wherein the tile display number is encoded in the file name of each view tile;
wherein an image file format is specified in the file names of the respective view tiles;
and wherein the VIEW rotation ANGLE, VIEW X MIRROR, VIEW Y MIRROR, and inverted VIEW information are encoded in a URL naming format in the form of V < SCALE > < TILE _ NUMBER > < VIEW _ ANGLE > < X _ MIRROR > < Y _ MIRROR > < INVERT > < IFF >,
wherein VIEW _ ANGLE has the form A < ANGLE >; and X _ minor, Y _ minor and INVERT are encoded by means of individual characters X, Y and I, respectively.
31. An apparatus comprising
A computer network server comprising communication means including WEB server software, processing means and storage means adapted to store digital document image files and programmed to receive requests in the form of URL codes specifying a view identifying an image file and a format selection including an operation code for selecting an updated view and a view template for determining the presentation of the view;
retrieving and composing means, responsive to receipt of a request for a view and identification of the image file and format selection, for retrieving said digital document image file and composing the requested view into a display grid of view tiles;
HTML code is calculated and transmitted for the resulting view tiled display grid.
32. Apparatus according to claim 31 wherein the server is programmed with WEB server software and a foreground view composer adapted to interpret a request for a view, calculate a view tile for the image, calculate an array of view tiles required for the requested view, compose an array of view tiles required for the requested view, and generate an HTML output file to describe the view composition.
33. Apparatus according to claim 31, wherein the server is programmed with a background view composer adapted to calculate and cache view tiles around the most recent view request in the time period between view requests, on the same scale as the most recent view, so that when a new changed view is requested later, the server program calculates which of the thus processed and cached surrounding view tiles can be used to respond to the changed view request and composes a view comprising one or more cached view tiles.
34. An apparatus comprising a network computer, said network computer comprising communication means including a client WEB browser, processing means and storage means for issuing a view request in the form of URL code specifying a view identifying an image file and format and displaying received HTML code specifying an array of view tiles in response to the issuance of the view request;
35. the apparatus of claim 34, wherein the network computer is programmed to cache view tiles received in response to one view request, and to access the cached view tiles if included in an array of view tiles included in a subsequently requested view.
36. The apparatus of claim 35, wherein the network computer is programmed with a view tile cache garbage collector to remove the least recently accessed view tiles when a maximum storage allocation or a minimum storage free space limit is reached.
37. An apparatus comprising a computer network server, said computer network server including communication means including WEB server software, processing means and storage means for storing digital document image files, the server being programmed to (a) receive a request from a computer in the form of a URL code specifying a view identifying the image file and format, (b) compose said requested view, and (c) transmit HTML code for said composed view to the requesting computer;
and wherein the surrounding view tiling is computed by the background view composer in a clockwise or counterclockwise spiral order from the most recently composed view.
HK05105820.0A 2005-07-11 Network image view server using efficient client-server filing and caching architecture HK1073365B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB988135752A CN1161698C (en) 1998-02-12 1998-02-12 Method and apparatus for identifying and delivering images from computer network file server

Publications (2)

Publication Number Publication Date
HK1073365A1 HK1073365A1 (en) 2005-09-30
HK1073365B true HK1073365B (en) 2008-12-19

Family

ID=

Similar Documents

Publication Publication Date Title
US6510459B2 (en) Network image view server using efficient client-server, tiling and caching architecture
US7529755B2 (en) Method for document viewing
US7844889B2 (en) Resolution independent display of internet content
US6950101B2 (en) Computer implemented method and system for transmitting graphical images from server to client at user selectable resolution
US20040003117A1 (en) Method and apparatus for dynamic optimization and network delivery of multimedia content
CA2327667C (en) Network image view server using efficient client-server, tiling and caching architecture
JPH09231121A (en) Document storage device
US20050005028A1 (en) Automated image markup system and method
HK1073365B (en) Network image view server using efficient client-server filing and caching architecture
HK1073365A1 (en) network image view server using efficient client-server filing and caching architecture
HK1035239B (en) Method and apparatus for identifying and delivering image from computer network file server
MXPA00007868A (en) Network image view server using efficient client-server, tiling and caching architecture
JP2008099320A (en) Highly efficient client server, network image view server using tiling and caching architecture
JP2010033611A (en) High-efficiency client server, and network image view server using tiling and caching architecture