
Eric A. Meyer
Peter Murray
Case Western Reserve University
Cleveland OH 44106, USA
eam3@po.cwru.edu
pem@po.cwru.edu
The Borealis image server is intended to address the need for creating a central place to store large numbers of images. The system itself is composed of widely available resources and could be easily reproduced at other sites at very little expense. A Borealis server can be queried from any Web page or browser and delivers an image which has been watermarked. This watermarking is intended to assert ownership of the image in an obvious but unobtrusive fashion. The server is managed using a database which ensures that collection identifier-picture identifier pairs are unique throughout the server. A variety of output styles are supported, including the image in its full size and a reduced version of the image. Images may also be returned in a variety of graphic formats, and a basic search engine allows users to quickly find images relevant to their needs. Through these and other features, the Borealis system is capable of filling a critical gap in the effort to make images available on the Web.
The Borealis Image Server project[1] was launched in late 1995. This initiative was undertaken in response to the realization that there is need for a simple, inexpensive, easily maintained image server that offers basic copyright protection. The result was described in the paper "Borealis Image Server"[2] which was presented at the Fifth International World Wide Web Conference in May 1996.
This paper describes the changes in the project since publication of that paper. It represents another chapter of a work-in-progress, as we are continuing to expand and improve on the Borealis system. Some of the changes described in this paper are the use of the PNG format as an image storage mechanism, Web-based administrative tools, and the addition of a basic search engine. Most of these changes were in response to advances in available technologies, whereas others (such as the search engine) were the result of inquiries and requests from members of the Internet community.
smoke fetish archive Avril lavigne pussy genie in a string bikinie cast Girls fuck horses stories pornstars xxx babes Nikki schieler ziering nude dickies jeans Skinny teen bitches hentai sex videos free Little girls sex nude pot Boob tube High school musical vanessa nude pics free artistic nude photos pussy prowler Gayforit watch free lesbian videos free teen celebs nude Bikini dare galleries spiritual sport fucking Big and beautiful porn stars
faked nude Sleep nude girls nature nude video Catfight nude nude asian sluts nude ladies pussy Sara roemer nude asian girls non nude School girls nude pics gay nude workout Nude nudist pamela anderson playboy nude pics Kathrine heigel nude Free nude hentai fairies nude swedish blonde nude Nude celebrity videos for free nude celebrities miley cyrus nude south african men Free hardcore nude nude cellphone pictures Bollywood nude boobs
blowjobs gallery Jim hardick free porn videos no credit card Creatine sex milfporn star aluminium essex Free video sex positions ultrapasswords xxx Xxx teen britney spears blowjob video Facts teenagers curfews natural hairy pussy Amature women Edwin carungay fuckyourtube sexproadventures Free kinky sex tips rave sex porn lyrics sexy back Better than sex cake recipe final fantasy rikku xxx Paris hilton blowjob
free yno sex video 3d young art sex phone web cam sex Amature woman sex party free home-made sex clips young sex in america Free dirty sex pictures best sfrican sex movies He she sex pics picts of amature sex Julie michaels sex scene bible view on sex Sex tv tv show Extreme insertion sex 6 fee animal sex vids sex girls piss tube Thai pussy sex porn sex 3d fantasy pics sex mature woman jokes Jeremiah birthday sex bio tulsa police sex registration Sex vedeo stream chat
independent sex scenes Racist daughter sex clearanced sex toys K9 sex clips britney sex movies black sex squirt Awsome hard sex manson sex onstage Nimpho sex classifieds sex offenders index Nomid animal sex hardcore lezbo sex Oral sex possitions Out sex videos sly fox sex famos toon sex Only ebony sex anette dawn sex extent sex pill Mature hairy sex asian sex french Kim kardishan sex
education research group Ari banerjee yankee group ancestry group Randy orton group free group sex porno group insurances Galleon group hedge fund rubber fab technologies group Attorneys group group b infection Risk retention group insurance the rules support group Green resources group Group dynamics team r46b group high five amateurs group Amazing group sex on demand color group lesbian group gallery Campy centaur group accept group Group of deer is called
fucking machine xxx College sex xxx chobits xxx Iran xxx sexo xxx enanas collection xxx Eve angel xxx pork xxx Older women xxx download free psp xxx Xxx sluts videos swingers xxx free Free bi xxx Photos xxx free harecore xxx xxx porn passwords Rapes xxx xxx adult dvd xxx gratis con putas Web site xxx free xxx mangas Alena seredova xxx
ball dragon porn video The thrills music video woman squirting free video Roma video card e pci video mtv jam video Apartment mikes picture video paris hilton video stills Big cock homemade movie council meeting video Studio telescope video converter ipod ora video Victoria pink videos Uk movies cussler movie new video releases 2005 Conferencing live video violence video games children tasha nelson video Rv video camera movie graber Adam sandler secret video
teacher sex crazydumper Sex health video marriage with sex Celebrity sex viceos busty office sex shove bull sex Football sex rio free sex shots Consensual submission sex free sex gemes Mauritius sex site hardcore sex mp3 Barbarella sex machine Hunting sex jessica alien sex gaems free sex xxx Muscular sex pictures ass booty sex dogpound group sex Anail sex videos vitamins before sex Brewster sex stories
asians sex Haveing sex with a man lesbien sex xxx Hypno girl sex arabic sex 9356 biker girls sex Guilty gear sex mature free sex tube Nude girls having sex with boys ray j and kim kardashian full sex tape for free Cyber sex forum what is angry sex Sex while pregnant pictures When can i have sex and not get pregnant home made amateur sex tapes dog sex beastality Sex games online for women clips cartoon sex taboo charming mother sex Girl sex pose hardcore gothic sex Best sex teacher
love sex relatioships Historical books sex pegging sex literature Sex story community sex bites torrent long sex trailors Gonzo rawr sex carrie bradshaw sex Voung teen sex home sex stream Kinky sex forum savvanah gold sex Anal sex wide Crushing for sex comic sex jokes mermaid sex videos Pet sex foram ali sheffield sex cancer sex partners Calforina sex retreat mini teens sex Anal sex cum
victorian xxx Xxx sci fi sexy photos xxx Xxx video play xxx babe videos animail xxx All xxx tube tilf 2 xxx Xxx puzzle black porno xxx 3gp xxx wap videos streaming xxx Free xxx moves Muscle gay xxx free gothic xxx video naruto xxx Xxx pass free best xxx movie 2008 xxx dog clips Xxx free e cards xxx porn full videos Xxx stone
porn movie theaters Morgan lane porn catherine porn Porn mom son sex mommy and daddy porn kasumi porn Find porn torrents rumania porn Xxx pictures porn black porn videos free Discipline porn biggest penis porn Littel girl porn Porn leg warmers tiny tits porn movies top 10 porn clips Free lovemaking porn homemade mexican porn vanessa raia porn Muslim porn sex free high definition porn streaming James nichols gay porn
fuck me gay Vulva fuck sexy fuck movie Mother lets son fuck her fuck you mom and dad mommy fuck son Father son fuck girl porn to fuck Fuck off letter fuck my boob Megaupload fuck i fuck my mother inlaw Doggy style fuck videos Woman looking to fuck shemales fuck girls movies kama sutra fuck Fuck you love mother daughter fuck boyfriend fuck church Dog fuck woman movies the fuck buttons Man fuck his dog
Blowjob And Cum Swallow mom giving son blowjob Preggo Blowjob free blowjob compilations blowjob mature Blowjob Guys blowjob fantasies 18 Avatar Blowjob sister gave me a blowjob Tickling Blowjob blowjob at school Hentai Porn Blowjob Fake Blowjob girl pukes during blowjob blowjob tryouts Guys Blowjob japanese girl giving blowjob most famous blowjob Gay Horse Blowjob double blowjob vids Blowjob Outdoor
Youngest Girl Porn Ever plus size sexy school girl Flavor Flav Girl Poops all girl sex videos girl porche Baby Girl I Want You gossip girl on tv com Hey Hey Baby Will You Be My Girl naked girl shitting Little Girl Photos ghetto black girl Go Go Girl Adult Girl Psp Theme girl for sale on ebay pin up girl hats Little Monster Girl naked teen girl pics black girl actress Sleeping Girl Gets Raped how to approach a girl online Girl And Girl Haveing Sex
Ink bitch webbie gutta bitch Lyrics to five star bitch bitch in french Badd bitch quotes cant trust no bitch Bitch asian im a pretty bitch Kristen stewart is a bitch a bitch slap G unit fat bitch Shut up bitch download im in san diego bitch cock hungry bitch Teeh fuck the bitch is kristen stewart a bitch bitch milfs Lyrics to bitch by meredith brooks foot fetish bitch Shake that ass bitch and let
paris hilton beach sex Cocksucker snake girls xxx Nude booty poppin little teens pics most extreme porn list Audience analysis heather locklear nude Porn star named madison lolita preteens Cheyanne bride black cock joelle amateur Nude christina aguilera Nice nude teen photo gallery hot cab mature sex sites Fucked by my dog mpegs massive tits men fucking boys Swedish porn galleries amateur nudes Sexy superheroes
bbw nude women Nude pussy cum naomi nude Nude asian americans courtney smith nude sienna guillory nude Girls basketball nude kate bosworth nude fakes Amateur wife nude photos ukraine nude teen Big black ass nude kiera knightley nude pics Nude russians Sleep nude chris brown rihanna nude photos pic of nude girls Bollywood nude images sexy and nude pics free nude college girl videos Nude dads and daughters ameture nude pictures Serena williams nude pix
1st Anal Sex what is an anal prolapse Types Of Anal Sex gay anal sex technique gay anal fisting videos Why Does Anal Sex Feel Good video double anal Lesbian Teens Anal largest anal dildo Lesbian Anal Toy anal sex poop videos Anal Hidden Cam Amateur Interracial Anal amy amour anal how to anal intercourse Anal Sex Condoms eyaculacion anal free anal streaming Anne Hathaway Loves Anal mini anal Unnatural Anal Insertions
Anal Guest free full anal movies Manual Anal 1st anal video shits herself anal Couple Anal Sex roxy renolds anal Sara Jay First Anal Scene anal destruction casedy Como Hacer El Sexo Anal anal sex effects Anal Cancer Blog Anal Toys Lesbian ice la fox anal scene lesbian anal vid Rough Anal Sex Clips wet anal double anal sex movie Palin Anal really painful anal Shitty Anal Fuck
rodox sex mpg Shower sex how penis breasts sex Sex malam pertama random sex videos exsplicit sex videos Sex lubrication silicone i post sex Sex fat chick celebriies having sex Adult sex animations sex and motorcycles Adult sex therapy Laura cover sex fucking having sex sex vacation caribbean Pool sex orgasm women barbershop sex office sex gay Secretaire office sex black sex vod Rainbow mika sex
Rock cock jock cock robin when your Wife big cock huge cock free pics Mature sucking black cock cock docking clips Hardcore riding cock cock sucking whores Fuck you cock sucker cock fighting rules Big cock hardcore Hubby loans to black cock milf sucking young cock two cock in pussy Cock sucker t shirt two cock fucking cock pierced Tila tequila suck cock largest cock videos White teen black cock
miss teen usa south carolina Fucking boobs thumbnails free videos of gay black me gandbang Senior sex trailer sophie monk nude nude music videos Britney spears porn video maggie grace nude Preteen bikini movies xxx Sexy pamela anderson vanessa new nude photos Aisha tyler nude pics Gametophyte produces male female sex mate plants toothless blowjob monthly membership streaming porn Pinkpanteens preteens in thongs lingerie nudecollege students Fat mature sex teen monologues Ebony muff diving
sex with hookers Free jaybee sex sex with redheads Cartoons about sex usa sex forum retarted girls sex Photo booth sex gay virgin sex Female sex chromosome sex teen candy Teenage sex story sex feet tingle Celebrity sex sces Flex girl sex lesbian sex galerii work at sex Rough sex free roug gangbang sex hypnosis sex best Sex trek 6 teens wating sex Ssecretary sex videos
1st Anal Sex what is an anal prolapse Types Of Anal Sex gay anal sex technique gay anal fisting videos Why Does Anal Sex Feel Good video double anal Lesbian Teens Anal largest anal dildo Lesbian Anal Toy anal sex poop videos Anal Hidden Cam Amateur Interracial Anal amy amour anal how to anal intercourse Anal Sex Condoms eyaculacion anal free anal streaming Anne Hathaway Loves Anal mini anal Unnatural Anal Insertions
Many of our assumptions remain unchanged since the project began;
these include the need for high-speed access and the use of free,
proven technologies in the construction of the system. However, there
are a few which should be reviewed or explained anew.
In order to keep the image URLs easy to remember and type, images are organized into image collections. Each collection has a collection manager who is able to add, remove, or edit images within the collection, and may create new collections or sub-collections as necessary. This approach, in conjunction with the use of a database to track image locations, keeps the image URLs fairly short and makes it easier for the collections to be managed.
It was decided early in the project that in order to simplify storage issues, the Borealis server would keep a single unmodified copy of each image. From this one file, the Borealis system can produce watermarked images, thumbnail images, scaled images, and converted images in a variety of graphic formats.
As we saw it, the alternative would be to require that each image be stored in its original state, a watermarked state, a thumbnail style (which would limit the system to a predefined thumbnail size), and conversions of the image, in both original and watermarked states, to a variety of graphic formats. By simply storing a single image, the system is given a great deal of flexibility. Addition of new system features, or redefinition of existing features, is accomplished by altering the Borealis system's code. There is no need to alter any pre-generated images, or to create new images, because the original is the only stored image and it does not need to be changed.
The Borealis system attempts to assert ownership through image watermarking-- that is, it creates a display image by combining a small image over the source image, thereby altering the source image enough to make it difficult to remove the watermark but not so much as to make the display image impossible to view. In many ways, watermarking is the core of the Borealis project. It was one of the original design goals, and it makes the system useful not only for academic institutions, but for any organization with a desire to provide large numbers of pictures to its clients.
The system is configured to "tile" a small watermark over a larger image, although it is possible to define a watermark large enough so that it is only used once, as was done in the Atlanta Olympics Picture Gallery[3]. However, the reason for this tiling approach is to watermark as much of the image as possible; this is an attempt to prevent end users from cropping out the watermark. If the watermark is a round seal, using one large watermark will miss the corners of the image, whereas tiling small watermarks across the image will account for most of the visible area.
All access to the images must occur through the Borealis system; in fact, there is no way to access the images on the Borealis server without first going through the Borealis system. The watermarking step cannot be bypassed by the user, although it can be suppressed by collection managers, if they choose to exercise this option.
![]() |
First, let's take a look at how a Borealis server delivers a single
image. When an image is requested, the server locates the requested
image, loads it into memory, converts it to an internal graphics
format, scales it if necessary, watermarks it, converts the
watermarked file to the requested graphics format, and delivers the
final image to the requesting agent (typically a Web browser). The
steps taken by the Borealis server are shown by the flow chart in
Figure 1.
Here's a concrete example. The server receives a request which looks something like this:
http://images.cwru.edu/full/campus/cmp0011.gif
![]() |
The server immediately breaks up the URL into the relevant parts: full defines the output style (in this case, full size, or the size of the original file stored by the system); campus indicates the collection of which this image is a part; cmp0011 is the image's identifying name, and .gif specifies the image format in which the display image should be.
The Borealis system performs a search of its database for the collection-image combination campus:cmp0011 and determines the location of the original image. It loads this image into memory, extracts any information stored in the image file, watermarks the file, converts the file into the graphic format requested (for maximum compatibility, the default format is GIF), and delivers this converted and watermarked image to the user [Figure 2].
A full-size version of the source image is watermarked and returned. In other words, no scaling is performed on the source image, and the display image is exactly the same size as the original. The outputFormat type "full" is used in the URL to request this style [Figure 3].
Example: http://images.cwru.edu/full/campus/cmp0094
Figure 3. Full-sized image
Thumbnail versions of the source images can also be generated by the Borealis server. A thumbnail display image is automatically scaled to be 100 pixels on the longest axis, with the other axis scaled proportionally. The thumbnail version of the source image is also watermarked, typically with a smaller-sized watermark file, and no copyright information is included with the display image. The outputFormat type "thumb" is used in the URL to request this style [Figure 4].
Example: http://images.cwru.edu/thumb/campus/cmp0094
Figure 4. Thumbnail image
A user can also request an "image information" page. This is a full HTML page consisting of the title of the image, an inline thumbnail of the image, copyright and author/title information, and a link to a full cataloging record, when such data exists. This output style is useful when a user wishes to get information about a specific image without going through a catalog system first. The outputFormat type "info" is used in the URL to request this style.
Example: http://images.cwru.edu/info/campus/cmp0094
Finally, users can request "contact sheets" of entire collections. These sheets are effectively collection overviews. The browser displays a thumbnail of each image in the collection, along with title and author information, as well as the sizes of the source images (measured in pixels). This output style is very useful for getting a quick idea of the contents of a collection without having to view each image individually. The outputFormat type "contact" is used to request this style, and no image should be specified; the URL should end with a collection identifier [Figure 5].
Example: http://images.cwru.edu/contact/campus/
Figure 5. Contact sheet
In addition to the above output styles and graphic formats, a user can request modifications to the output through the use of parameters which are appended to an image's URL, as described in the HTTP specification[4]. These parameters are:
http://images.cwru.edu/full/campus/cmp0011.gif?scale=0.75
http://images.cwru.edu/full/campus/cmp0011.gif?size=90,65
http://images.cwru.edu/full/campus/cmp0011.gif?rotate=90
The Borealis system runs on a UNIX machine (our current server is a Sun SparcStation 20 with Solaris 2.5) running an HTTP server. A Perl script called imagesrv.pl forms the basis of the request mechanism. The various output styles (full-size, thumbnail, and so on) are aliased to imagesrv.pl using the ScriptAlias directive in the Web server's srm.conf configuration file. When imagesrv.pl receives a request, it checks the validity of the input and makes sure that the proper utilities exist to perform the requested conversion. For this, it must be able to convert the source file from PNG into the PNM internal format, and then after watermarking convert it from PNM into the requested graphic format.
Error control and logging are also performed by imagesrv.pl. After processing the input and determining what step must be taken, the script strings together a series of UNIX commands. These commands are then passed to the shell (via the open command) in order to perform the image processing. The NetPBM utilities and various add-ons are used to convert the source image into the internal PNM format, perform the watermarking and scaling functions, and to convert the internal PNM format to the image format requested by the user.
The following components are used in the Borealis system:
The server maintains an image database called imageDatabase to link collectionID - imageID pairs to a file on disk. Presently this database is in the form of a DBM file on disk. Since the performance of DBM breaks down for large indexes, however, we may need to move to a more formal database product as the collections grow (as summarized in the Future Plans section). The key portion of an entry in the index is a string composed of the collectionID and imageID values; the uniqueness of these pairs is enforced by the Borealis system. The data portion of an entry is the absolute pathname to the source image. This index is updated in real time whenever source images are added to or removed from a collection.
The Borealis system is designed to allow several collection managers, each with his own login-id and password to the server. This ID and password allows complete control over images contained within collection in the manager's area. Collection managers may create and remove collections, add and remove images within these areas, and change watermark, title, and author information for images and collections. In order to maintain a flat URL structure, the Borealis system guarantees that the collectionID for a given collection is unique throughout the system, including those collections under the control of other collection managers.
One goal of the system is to enforce a relatively flat URL space so that the URLs of images are short and easy to remember. This feature should be appreciated by catalogers and users alike. The URL of a Borealis image is in the form:
http://images.cwru.edu/outputStyle/collectionID/imageID.ext?param=value
where outputStyle represents the requested format of the image (thumbnail, full-size, etc.), and is an alias (in both the srm.conf file and the UNIX file system) to imagesrv.pl; collectionID is a unique collection name on the Borealis server containing a group of related images; imageID is the name of an image which is unique within in that collection; and the ext, if any, specifies a particular graphic format (see "Image Conversion" below). param and value can be any one of a number of things as described in the section "URL Parameters."
While it is possible for an image collection to contain thousands of individual images, it is generally not efficient for a UNIX directory to contain thousands of directory entries. An image collection manager can create subdirectories of images based on a logical structure that is meaningful to the collection manager, but which remains invisible to the end user.
This database maintains at least three pieces of information for every image on the server: the collectionID and the imageID, which as a pair form a unique key in the database, and the actual pathname of the image. For example, an image with imageID of "cmp0066" which is part of the collection whose identifier is "campus" might actually have the server pathname /images/lit/jan96/p1/cmp0066.png. The URL of this image in GIF format at full size would be:
http://images.cwru.edu/full/campus/cmp0066.gif
The Borealis system receives the above request from a Web browser (for example). It searches through imageDatabase and finds the following entry:
campus:cmp0066 /images/lit/jan96/p1/cmp0066.png
The system then loads the file into memory, watermarks it, and delivers the resulting display image to the browser.
One of the most popular requests from users of the system, and of attendees at the Fifth International World Wide Web Conference, was the addition of a search engine to the Borealis system. The use of the Harvest search engine to index information imbedded in PNG files has been demonstrated[14] by Dave Beckett, University of Kent at Canterbury. The Borealis system therefore employs a Harvest Gatherer which extracts the information from individual PNG files for the Harvest Index/Search engine, using a locally written Perl routine to do so. A Web form is used to solicit search parameters from users of the Borealis search system. The search can be restricted to certain collections, or set to cover the entire server.
Once the user enters a keyword or set of keywords, the search is performed. The Borealis server keeps track of the images whose information matches the search terms. It then begins to return a page similar to the contact sheet output style. In this case, however, in addition to thumbnails of the images and the author, title, and size information, the results also display the collection of which each image is a part, and a link to the contact sheet for that collection.
All of the source images on a Borealis server are stored in the PNG format. We settled on this approach after examining the PNG specification[15] and finding that it was uniquely suited to our purposes. First of all, PNG offers lossless compression up to 24-bit color, which allows us to conserve disk space without sacrificing the quality of the source images. PNG is also an open standard and therefore free of license restrictions.
Most important, however, is the ability to imbed text information directly into the image files. Using this capability of PNG, we are able to store basic information about each image, such as the copyright text and the title of the image, inside the image itself. This is preferable to the original design, which employed separate text files, and is much less processor-intensive than using a separate database to store this information.
A PNG file is made up of chunks[16], each containing information such as the image data, alpha and gamma channels, compression specifications, and other image-related information. The PNG specification also allows for the creation of keyword-value text pairs within the file. These repeatable text fields are labelled "tEXt" chunks. Several keywords used by the Borealis system are already defined in the PNG specification; these include "[Image] Title," "Author," and "Copyright." For PNG files delivered to end users, the standards-defined keyword "Software" is set to a URL and description of the Borealis system. In addition, the Borealis system uses the keywords "Borealis-Watermark" for the full-size image watermark file and "Borealis-tWatermark" for the thumbnail-size watermark file. The keywords are so named in order to avoid possible future conflicts, should watermarks be added to the PNG specification.
A future version of the Borealis system will use the keyword "Borealis-CatalogLink" for linking information into local library catalogs. The PNG specification also allows for text chunks to be compressed (these are labelled "zTXt" chunks), but since the text information we are imbedding is fairly short, little size efficiency would be gained from compressing, and it would come at the expense of computational resources. A locally written Perl library, based on code from the PNG Development Group library, is used to read and write the text chunks in each PNG image.
The operation of watermarking is a non-destructive procedure. It would be simple to merely overwrite the image, but this would defeat the purpose of watermarking. Instead, the light values of the watermark image are used to modify the image so that the watermark appears to have been "stamped" into the surface of the image. This permits the user to see what the file looks like while still asserting ownership of the image.
There are two elements in the watermarking procedure: the source file and a watermark file. In the interests of speed, the watermark file is stored in the PPM graphics format. When an image is requested, the server loads the source file and performs any transformations (scaling or rotating) that have been requested. It then loads the watermark file for the image or collection, and the watermark is applied to the converted image in a grid pattern.
![]() | plus | ![]() | equals |
|
Pixels in the watermark file which are darker than 50% gray cause the corresponding pixels in the image to be darkened, whereas pixels lighter than 50% gray have a lightening effect [Figure 6].
It is also important that the copyright information be displayed as part of a full-size image. If there is enough room, the copyright text is watermarked into the image [Figure 7]; if not, the copyright statement is appended to the image inside a black bar [Figure 8]. As with the basic watermarking, the addition of the copyright statement is done after any scaling or resizing of the image itself. Copyrights are not added to thumbnails.
![]() |
![]() |
As a way to speed access to popular images, a cache area is reserved on the Borealis server's disk to store watermarked images. This area is implemented as a single directory with the filenames corresponding to the collectionID - imageID pair. Information from sizing and rotating parameters are also included in the filename. When a request for an image is received, the Borealis system first checks the cache area for the image. If it is found, and if the source image and watermark images have not been subsequently modified, the system immediately delivers the image to the user.
The Borealis system uses a time-based cache system where the oldest images are removed as new images are converted and stored in the cache. This weeding process is performed as a cron job so that the removal process does not impact the performance of imagesrv.pl. This job runs periodically throughout each day; at this time, the interval is one hour. Images may be removed based on a number of criteria: creation date, last-accessed date, or file size. Finally, if the Borealis system detects an out-of-disk-space condition, it also forks a background process to clear the cache in order to reclaim needed disk space.
There may be times when the server cannot deliver a requested image. This can happen in circumstances where the image does not exist, either due to a mistyped URL or removal of an image from the server, or if access to the image has been temporarily restricted. If an error occurs, the system instead returns a small image containing text to the effect that the requested image is not available [Figure 10]. Error messages are delivered as images, and not as text, because in many cases the Borealis system will be referenced using an IMG tag in a Web page. Error images are created using the "pbmtext" utility and then converted to GIF (with a transparent background). Error parameters, along with information from the HTTP request such as the Client-IP and Referer: fields, are also written to a file for review by the collection manager and the Borealis system administrator.
![]() |
By the time this paper is presented, we expect the server to be HTTP/1.1[17] compliant. Of note is that the Borealis system will run as a "non-processed header" (NPH) script, allowing the Borealis system's HTTP server to send and receive all of the HTTP headers. The server will send back the appropriate "content-length" headers, and process byte-range requests to continue transmission of interrupted transactions. The server will also respond to HEAD requests and cache control mechanisms. Lastly, we expect to make use of the "Accept" request header in order to return to the browser the most preferred graphics format when no format is specified in the image's URL.
Another major improvement to the Borealis system is the addition of Web-based administrative tools, referred to collectively as the Collection Management System (CMS). This form-driven interface allows collection managers to add, remove, or transfer images, create or delete entire collections, set collection parameters, and edit information for individual images. Access to the CMS is restricted by a username-password system, so that only authorized collection managers can get access to the collections.
As of this writing, the CMS offers six administrative tools: Add Image, Edit Image, Image Groups, Add Collection, Edit Collection Data, and Watermark Add/Delete. All six are listed on the initial CMS screen, which is presented as soon as the collection manager logs in.
The Add Image screen is made up of two main sections: an area to enter data regarding the image to be added, and a list of collections to which the collection manager has access [Figure 11].
The first input is a file upload entry. This form-upload input type is relatively new[18], so use of the system is restricted to those collection managers who are using recent browsers such as Netscape 3.0. We expect more browsers to support this new element in the near future. Using a file upload input removes the need for creating FTP accounts for the collection managers; this is felt to be an improvement in many ways. The server's security is better protected, and there is also a reduced need for system documentation and the training of collection managers. The uploaded image may be in any one of the graphic file formats supported by the Borealis system. The source image is converted to PNG before insertion into imageDatabase.
Once the file to be uploaded has been designated, the information entered, and the proper collection selected, the collection manager hits the "Add Image" button. He is then presented with a screen which summarizes the information as the system received, and confirmation is requested. If the collection manager confirms the addition of the image, the system then converts the image to the PNG format, imbeds the text information into the image file, and stores it in the appropriate directory on the server.
![]() |
The Edit Image tool [Figure 10] is quite similar to Add Image in that it displays and allows the editing of the image's imbedded text information and watermark, although there is no ability to upload a file. Instead, there are options to move the image to a different collection, or to delete the image altogether. In addition to the collection list, there is also a list of images in the currently active collection.
The Image Groups tool displays all of the images in a given collection. The collection manager is able to select multiple images and then may choose to either move the entire group to another collection, or delete the selected group. Watermark Add/Delete allows for the uploading of watermark files to, or the deletion of watermark files from, the collection manager's area.
If a collection manager wishes to set up a new collection, he would select the Add Collection tool. The user is prompted for the collectionID, as well as for a more verbose title. Once the system has verified that the collectionID is unique, the collection manager is presented with the Edit Collection Data tool, with the new collection preselected.
Finally, the Edit Collection Data tool permits the collection manager to change the basic parameters of an entire collection, such as the default copyright statement or the default watermark. This screen is also used to set the robot flag. This parameter controls whether or not the contents of the collection may be indexed by automated data gatherers such as WebCrawler. An entire collection may also be deleted from this screen, although this operation requires confirmation from the collection manager.
Although we are fairly happy with the tools we have created, there is room for improvement and expansion. Some possibilities under consideration include displaying a summary of valid watermark files as images instead of a text list, and a tool which will allow the collection manager to index the collection on the fly.
As discussed in the "Server Description" section, we plan to make full use of the content negotiation capabilities of HTTP/1.1. This will allow us to determine which graphic format would be best to return to a given user if no format was specified, instead of always defaulting to GIF, as the system does presently.
Copyright ownership information and author/publisher information is usually stored in the bibliographic record found on a catalog system such as EuclidPLUS. We have considered retrieving this information from the catalog system and then watermarking it into the image. Unfortunately, we have yet to find a satisfactory general solution to this goal, although we continue to see promise in the Z39.50 protocol[19] used to transmit bibliographic data from one system to another.
For those authenticated to do so, the system will offer an output style that is a non-watermarked version of the image. We would anticipate that this would be used by the staff members who maintain the image collections. We also would like to propose a system where a one-time or limited time key can be issued by the manager of an image collection so that a user can retrieve a non-watermarked version of the image (presumably after negotiating a usage agreement with the copyright holder/collection manager of the image archive).
We are considering moving to an object-oriented database, which may offer significant advantages over the current directory-structure approach. This will depend on the versatility and universal availability of the products we study; one product currently under review is mSQL[20], which has the advantage of being free for education and non-profit use.
It was always our intention to continue development of the Borealis system, and this paper is merely the most coherent expression of that effort. We hope that this paper provides an interesting look into the development of a system over time, as well as an update on the project's features. As available technology advances, the Borealis system will advance with it. The use of the PNG format, addition of a search system, and the use of file upload inputs are all examples of the project's growth. We look forward to future improvements such as making the server more efficient by employing the content-negotiation features of HTTP/1.1 and delivering display images in the best graphic format possible to each user. As always, the Perl portions of the Borealis source code are available at http://borealis.cwru.edu/source/, as is the watermarking module, which is written in C. It remains our hope that the Internet community will not only use Borealis, but also help us to improve the Borealis system.
Eric A. Meyer is the Hypermedia Systems Manager at Case Western Reserve University (CWRU) in Cleveland, Ohio, USA. Eric is a 1992 graduate of CWRU and holds a Bachelor of Arts Degree in History with minors in English, Astronomy, and Artificial Intelligence. His current activities include managing the CWRU campus Web server, direction of campus Web growth, and development of new Web-based technology. It is in this last capacity that he has been involved with the Borealis Image Server project. He is also the author of a critically acclaimed on-line tutorial titled "Introduction to HTML" (http://www.cwru.edu/help/introHTML/toc.html) and maintainer of a set of pages concerning CSS1 support in Macintosh Web browsers.
Peter Murray is the Library Systems Manager at Case Western Reserve University (CWRU) in Cleveland, Ohio, USA. Peter is a 1991 graduate of Miami University with a Bachelor of Science Degree in Systems Analysis. His primary job responsibility at CWRU is managing the library automation system and providing UNIX technical support. Peter has been an active user of the Internet since 1988 and has conducted many regional training sessions. Peter is responsible for much of the Borealis Image Server programming.