Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
COMPUTER SYSTEM AND METHOD FOR PROCESSING A PLURALITY OF DIGITAL IMAGES
Document Type and Number:
WIPO Patent Application WO/2005/024657
Kind Code:
A2
Abstract:
According to the invention, a browser program comprising an integrated interpreter language is contained in a client computer. The reproduction of an image that is transmitted from a server computer to the client computer and that is reproduced for the user by means of the browser program takes place using the interpreter language.

Inventors:
GUENTHER ANDREAS (DE)
BRASCH HEINZ (DE)
Application Number:
PCT/EP2004/009509
Publication Date:
March 17, 2005
Filing Date:
August 26, 2004
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
HENKEL KGAA (DE)
GUENTHER ANDREAS (DE)
BRASCH HEINZ (DE)
International Classes:
A45D44/00; G06F17/30; G06T11/00; (IPC1-7): G06F17/30
Domestic Patent References:
WO2001087245A22001-11-22
WO1998058493A11998-12-23
WO2003020072A12003-03-13
WO2002042933A22002-05-30
Foreign References:
US20030035584A12003-02-20
US20030154261A12003-08-14
US6144388A2000-11-07
EP1215573A12002-06-19
Other References:
STEIN L: "Web applets: Java, JavaScript and ActiveX" TRENDS IN GENETICS, ELSEVIER SCIENCE PUBLISHERS B.V. AMSTERDAM, NL, Bd. 12, Nr. 11, November 1996 (1996-11), Seiten 484-485, XP004181567 ISSN: 0168-9525
Download PDF:
Claims:
Patentansprüche
1. Computersystem zum Verarbeiten einer Vielzahl von digitalen Bildern, . mit mindestens einem ClientRechner, welcher ein Browserprogramm aufweist, in das eine Interpretersprache integriert ist, . mit mindestens einer Bilddatenbank, in der eine Vielzahl von digitalen Bildern gespeichert ist, und 'mit mindestens einem mit dem ClientRechner und der Bilddatenbank gekoppelten ServerRechner, welcher aufweist : ein BrowserServerprogramm sowie 'mindestens ein Bildverarbeitungsprogramm, das eingerichtet ist zur Veränderung der Farbinformation von Bildpunkten eines digitalen Bildes der Bilddatenbank, . wobei das Computersystem derart eingerichtet ist, dass die Darstellung eines von dem ServerRechner auf dem ClientRechner übertragenen digitalen Bildes mittels des Browserprogramms dargestellten Bildes unter Verwendung der Interpretersprache erfolgt.
2. Computersystem gemäß Anspruch 1, bei dem das Browserprogramm als World Wide WebBrowserprogramm eingerichtet ist, und bei dem das BrowserServerprogramm als World Wide WebBrowser Serverprogramm eingerichtet ist.
3. Computersystem gemäß Anspruch 1 oder 2, bei dem der ClientRechner und der ServerRechner mittels eines internetbasierten Telekommunikationsnetzes miteinander gekoppelt sind.
4. Computersystem gemäß einem der Ansprüche 1 bis 3, bei dem das Bildverarbeitungsprogramm eingerichtet ist zur Durchführung zumindest einer der folgenden Operationen : Veränderung der Helligkeit von Bildpunkten eines Bildes, 'Veränderung des Kontrasts von Bildpunkten eines Bildes, Mischen von Bildinformation zweier Bilder, 'Transformation von Bildpunkten eines Bildes zugeordneter Farbinformation von einer ersten Farbraumdarstellung in eine zweite Farbraumdarstellung.
5. Computersystem gemäß Anspruch 4, bei dem das Bildverarbeitungsprogramm eingerichtet ist zur Transformation von Bildpunkten eines Bildes zugeordneter Farbinformation von einer ersten Farbraumdarstellung in eine zweite Farbraumdarstellung und bei dem die erste Farbraumdarstellung und/oder die zweite Farbraumdarstellung eine der folgenden Farbraumdarstellungen sind/ist : RGBFarbraumdarstellung,<BR> sRGBFarbraumdarstellung,<BR> CMYKFarbraumdarstellung,<BR> HLSFarbraumdarstellung.
6. Computersystem gemäß einem der Ansprüche 1 bis 5, bei dem die Interpretersprache die Sprache Javascript, die Sprache VBScript oder die Sprache Jscript ist.
7. Computersystem gemäß einem der Ansprüche 1 bis 6, bei dem die digitalen Bilder der Bilddatenbank jeweils enthält den Gesichtsbereich einer Person, einen Haarbereich einer Person und einen Hintergrundbereich.
8. Computersystem gemäß Anspruch 7, bei dem jedes digitale Bild aufweist : * ein erstes Teilbild, in dem der Gesichtsbereich, der Haarbereich und der Hintergrundbereich enthalten ist, * ein zweites Teilbild, in dem Information über den Haarbereich enthalten ist, und 'ein drittes Teilbild, in dem Information über den Hintergrundbereich enthalten ist.
9. Computersystem gemäß Anspruch 7 oder 8, bei dem eine Mehrzahl von digitalen Bildern jeweils von einer Person in der Bilddatenbank gespeichert sind, wobei die Mehrzahl von digitalen Bildern einer Person diese aufgenommen von unterschiedlichen Perspektiven zeigen.
10. Computersystem gemäß einem der Ansprüche 7 bis 9, bei dem der ClientRechner derart eingerichtet ist, dass unter Verwendung der Mehrzahl von digitalen Bildern einer Person eine quasidreidimensionale Darstellung der Person ermöglicht ist.
11. Computersystem gemäß einem der Ansprüche 1 bis 10, bei dem das Browserprogramm und das BrowserServerprogramm eingerichtet sind zur Verarbeitung von Daten, welche gemäß einer Beschreibungssprache codiert sind.
12. Computersystem gemäß Anspruch 11, bei dem das Browserprogramm und das BrowserServerprogramm eingerichtet sind zur Verarbeitung von Daten, welche gemäß einer der folgenden Beschreibungssprachen codiert sind : Hypertext Markup Language, Vector Markup Language, und/oder Wireless Markup Language.
13. Computersystem gemäß einem der Ansprüche 1 bis 12, bei dem der ClientRechner derart eingerichtet ist, dass das digitale Bild in einem vorgegebenen Bildschirmoberflächenbereich einer Bildschirmoberfläche darstellbar ist, und dass in dem Bildschirmoberflächenbereich vor Darstellung des Bildes bei Laden des Bildes von dem ServerRechner eine Ladezustandsanzeige dargestellt wird, mit dem der Verlauf des Ladevorganges dargestellt wird.
14. Computersystem gemäß einem der Ansprüche 1 bis 13, bei dem der ClientRechner eingerichtet ist zur Veränderung der Skalierung des digitalen Bildes.
15. Verfahren zum rechnergestützten Verarbeiten einer Vielzahl von digitalen Bildern, bei dem unter Verwendung eines Browserprogramms, in das eine Interpretersprache integriert ist, von einem ClientRechner eine Bild Anforderungsnachricht, mit dem mindestens ein digitales Bild angefordert wird, an einen ServerRechner übermittelt wird, wobei der ServerRechner aufweist ein BrowserServerprogramm, bei dem von dem ServerRechner aus einer Bilddatenbank, in der. das angeforderte mindestens eine digitale Bild ausgelesen wird, bei dem mittels des BrowserServerprogramms das ausgelesene digitale Bild und Steuerinformation, codiert in der Beschreibungssprache und/oder in der Interpretersprache des Browserprogramms, an den ClientRechner übertragen wird, und. bei dem unter Verwendung der Steuerinformation das digitale Bild mittels des Browserprogramms dargestellt wird.
16. Verfahren gemäß Anspruch 15, bei dem von dem ClientRechner eine BildänderungsAnfragenachricht, mit der eine Änderung der Bildinformation des an den ClientRechner übertragenen digitalen Bildes angefragt wird, an den ServerRechner übertragen wird, . bei dem von dem ServerRechner, welcher mindestens ein Bildverarbeitungsprogramm aufweist, das eingerichtet ist zur Veränderung der Farbinformation von Bildpunkten eines digitalen Bildes das digitale Bild verändert wird, . bei dem das veränderte digitale Bild von dem ServerRechner an. den ClientRechner übertragen wird, und bei dem das veränderte digitale Bild von dem ClientRechner mittels des Browserprogramms dargestellt wird.
Description:
Computersystem und Verfahren zum Verarbeiten einer Vielzahl von digitalen Bildern In [1] ist ein Verfahren zur Haarfarbberatung beschrieben, bei dem mittels einer Videokamera, eines Computers und eines Bildschirms eine Auswahl einer gewünschten Haarfarbe einer Person aufgenommen und auf einem Bildschirm dargestellt wird, wobei die Bilder der Person mittels der Videokamera kontinuierlich aufgenommen und in Echtzeit zu dem Computer übertragen werden.

Für jedes Einzelbild wird in Echtzeit eine digitale Bildbearbeitung durchgeführt, wobei ein Haarbereich der Person identifiziert, die Farbe in dem Haarbereich nach vorgegebenen Spezifikationen verändert und die Bilder mit dem veränderten Haarbereich in Echtzeit auf einem Bildschirm oder einem Touchscreen dargestellt wird.

Bei diesem Verfahren wird ausschließlich die Bildverarbeitung in einem Einzelrechner zur Bildverarbeitung beschrieben, womit eine verteilte Bildverarbeitung und Nutzung von digitalen Bildern beispielsweise über das Internet mit einer Vielzahl von beteiligten Rechnern nicht ermöglicht ist.

Ferner ist in [2] ein servergesteuertes Informationsportal für den Friseurbereich beschrieben, bei dem nutzerspezifische Informationen und Dienstleistungen über das Internet bereitgestellt werden, wobei unterschiedliche Informationen und Dienstleistungen in Abhängigkeit der Identität des Benutzers und den damit verbundenen spezifischen gespeicherten Benutzerinformationen geliefert werden.

In [2] ist insbesondere beschrieben, dass die nutzerspezifischen Informationen und Dienstleistungen Online-Kalkulationen, Vertragsvorlagen, Produktinformationen und Online-Bestellmöglichkeiten sind.

Ein Nachteil des in [2] beschriebenen servergesteuerten Informationsportals ist insbesondere darin zu sehen, dass es zur Bereitstellung der nutzerspezifischen Informationen erforderlich ist, zu einem internetbasierten Browserprogramm zusätzliche Plug-In-Computerprogramme wie z. B. eine Java Virtual Machine oder ein ActiveX-Computerprogramm auf jedem Client-Rechner zu installieren.

Dies führt zu erheblichen Nutzungseinschränkungen, da es abhängig von der jeweiligen Sicherheitspolitik beispielsweise in einem firmeninternen Intranet möglich ist, dass der Einsatz solcher zusätzlichen Computerprogramme nicht zugelassen ist.

Auch ist die Installation beispielsweise eines Java Virtual Machine- Computerprogramms sehr komplex und unkomfortabel, womit die Nutzerakzeptanz eines solchen Systems sehr gering ist.

Ferner ist in [3] ein Browserprogramm beschrieben, nämlich der Internet- Explorer der Firma Microsoft.

Ferner ist in [3] beschrieben, dass das Browserprogramm Internet Explorer Version 5.5 und höher, d. h. eine Version des Internet Explorer-Browserprogramms ab der Version 5.5 und neuer, ein Computerprogramm bzw. eine Computerprozedur enthält, welches als Vektor Markup Language (VML) bezeichnet wird und welches die Darstellung von vektororientierter Grafik ermöglicht.

Der Erfindung liegt das Problem zugrunde, digitale Bilder zu verarbeiten, wobei das Übertragen von digitalen Bildern von einem Server-Rechner zu einem Client- Rechner in einer Weise ermöglicht wird, dass sie den in [2] beschriebenen Nutzungseinschränkungen nicht unterliegt. Anders ausgedrückt bedeutet dies, dass ein Computersystem geschaffen werden soll, welches ohne eine Installation eines zu dem Browserprogramm zusätzlichen Computerprogramms, beispielsweise eines Java Virtual Machine-Computerprogramms oder eines ActiveX-Computerprogramms auskommt.

Das Problem wird durch das Computersystem und durch das Verfahren zum rechnergestützten Verarbeiten einer Vielzahl von digitalen Bildern mit den Merkmalen gemäß den unabhängigen Patentansprüchen gelöst.

Ein Computersystem zum Verarbeiten einer Vielzahl von digitalen Bildern weist mindestens einen Client-Rechner auf, welcher ein Browserprogramm enthält.

Anders ausgedrückt bedeutet dies, dass in dem Client-Rechner ein Browserprogramm installiert ist. Das Browserprogramm ist derart eingerichtet, dass in ihm eine Interpretersprache integriert ist, d. h. anders ausgedrückt, dass mittels des Browserprogramms ein in der Interpretersprache codierter Code verarbeitbar ist. Ferner weist das Computersystem mindestens eine Bilddatenbank auf, in welcher eine Vielzahl von digitalen Bildern gespeichert ist. Mit dem mindestens einen Client-Rechner und der mindestens einen Bilddatenbank ist ein ebenfalls in dem Computersystem vorgesehener Server-Rechner gekoppelt. Der Server-Rechner weist mindestens ein Browser-Serverprogramm sowie mindestens ein Bildverarbeitungsprogramm auf, welches eingerichtet ist zur Veränderung der Farbinformation von Bildpunkten eines digitalen Bildes der Bilddatenbank. Das Computersystem ist derart eingerichtet, dass die Darstellung eines von dem Server-Rechner auf dem Client-Rechner mittels des Browserprogramms dargestellten Bildes unter Verwendung der Interpretersprache erfolgt.

Bei einem Verfahren zum rechnergestützten Bearbeiten einer Vielzahl von digitalen Bildern wird unter Verwendung eines Browserprogramms, in das eine Interpretersprache integriert ist, von einem Client-Rechner eine Bild- Anforderungsnachricht an einen Server-Rechner übermittelt. Mittels der Bild- Anforderungsnachricht wird mindestens ein digitales Bild zur Übertragung an den Client-Rechner angefordert. Der Server-Rechner weist ein Serverprogramm zur Bearbeitung von Anfragen des Browsers (Browser-Serverprogramm) auf. Von dem Server-Rechner wird die Bild-Anforderungsnachricht mittels des Browser- Serverprogramms empfangen und decodiert und das gemäß der Bild- Anforderungsnachricht angeforderte digitale Bild wird aus einer Bilddatenbank, mit der der Server-Rechner gekoppelt ist, und in der das mindestens eine digitale Bild gespeichert ist, mittels des Browser-Serverprogramms ausgelesen. Ferner wird von dem Browser-Serverprogramm das ausgelesene digitale Bild mit zusätzlicher Steuerinformation versehen und gemeinsam mit dieser zu dem Client-Rechner übertragen. Die Steuerinformation ist in der Beschreibungssprache, welche von dem Browserprogramm und dem Browser-Serverprogramm verwendet wird und/oder in der Interpretersprache, welche in dem Browserprogramm integriert ist, codiert. Nach Empfang des angeforderten digitalen Bildes und zusätzlich der zugefügten Steuerinformation wird nach erfolgter Decodierung der Steuerinformation das digitale Bild unter Verwendung der Steuerinformation mittels des Browserprogramms einem Benutzer des Client-Rechners dargestellt.

Durch die Erfindung wird erreicht, dass eine zusätzliche Installation von Plug-In- Computerprogrammen, wie beispielsweise eines Java Virtual Machine- Computerprogramms oder ActiveX-Computerprogramms nicht mehr erforderlich ist. Es kann erfindungsgemäß ein auf jedem üblichen Client-Rechner installiertes Browserprogramm, welches eine oben dargelegte Interpretersprache enthält, verwendet werden zur unmittelbaren Darstellung von digitalen Bildern mit der zusätzlichen Option, in der Interpretersprache codierte Steuerinformationen im Rahmen der Darstellung des oder der digitalen Bilder zu berücksichtigen und zu verwerten.

Damit ist eine digitale Bildverarbeitung auch in einem Umfeld mit Client-Rechnern, welche einer restriktiven Sicherheitspolitik unterworfen sind, möglich, da, wie oben beschrieben, keine Installation zusätzlicher Computerprogramme auf den Client- Rechnern erforderlich ist. Auch ist der Einsatz des erfindungsgemäßen Computersystems sofort nach erfolgter Installation des Browserprogramms ermöglicht, wodurch die Nutzerakzeptanz erheblich erhöht wird.

Anschaulich kann die Erfindung darin gesehen werden, dass ein in einem üblichen Browserprogramm vorhandener, aber bisher nicht genutzter Mechanismus erstmalig eingesetzt wird zur Verarbeitung von digitalen Bildern unter Verwendung von in der Interpretersprache codierter Steuerinformation.

Bevorzugte Weiterbildungen der Erfindung ergeben sich aus den abhängigen Ansprüchen.

Die im Folgenden beschriebenen Ausgestaltungen der Erfindung betreffen sowohl das Computersystem als auch das Verfahren zum Verarbeiten einer Vielzahl von digitalen Bildern.

Das Browserprogramm ist vorzugsweise als World Wide Web-Browserprogramm (WWW-Browserprogramm) eingerichtet und das Browser-Serverprogramm ist vorzugsweise als World Wide Web-Browser-Serverprogramm (WWW-Browser- Serverprogramm) eingerichtet.

Bei dieser Ausgestaltung der Erfindung wird die Einsetzbarkeit des erfindungsgemäßen Computersystems noch dadurch vereinfacht, dass ein weit verbreitetes und standardisiertes Browserprogramm bzw. Browse- Serverprogramm verwendet wird.

Gemäß einer anderen Ausgestaltung der Erfindung sind der mindestens eine Client-Rechner und der Server-Rechner mittels eines internet-basierten Telekommunikationsnetzes miteinander gekoppelt. Anders ausgedrückt bedeutet- dies, dass die Client-Rechner und der Server-Rechner miteinander unter Verwendung des TCP/IP-Kommunikationsprotokollstacks (Transport Control Protocol/Internet Protocol-Kommunikationsprotokollstacks) kommunizieren.

Auch durch diese Ausgestaltung der Erfindung wird die Nutzung des erfindungsgemäßen Computersystems weiter vereinfacht, und robust gestaltet, da die verwendeten Mechanismen sehr gut entwickelt und als Standardmechanismen weit verbreitet sind.

Es ist in diesem Zusammenhang anzumerken, dass grundsätzlich eine beliebige Anzahl von Client-Rechnern und Server-Rechnern vorgesehen sein können, welche vorzugsweise mittels des Internet miteinander zum Austausch digitaler Nachrichten gekoppelt sind. Die oben und im Folgenden beschriebenen Funktionalitäten insbesondere in dem Server-Rechner können auch auf mehreren Server-Rechnern verteilt implementiert sein, so dass der Begriff"Server-Rechner" im Rahmen der Beschreibung so zu verstehen ist, dass die Server-Funktionalität bereitgestellt wird, egal von welcher Zahl tatsächlich vorhandener Server-Rechner.

Das in dem Server-Rechner installierte Bildverarbeitungsprogramm ist gemäß einer Ausgestaltung der Erfindung zur Durchführung zumindest einer der folgenden Operationen eingerichtet : Veränderung der Helligkeit von Bildpunkten eines digitalen Bildes, Veränderung des Kontrasts von Bildpunkten eines digitalen Bildes, Mischen von Bildinformationen zweier Bilder zu einem digitalen Mischbild mit Misch-Bildpunktinformationen, und/oder Transformation von Bildpunkten eines digitalen Bildes zugeordneter Farbinformation von einer ersten Farbraumdarstellung in eine zweite Farbraumdarstellung.

Ein Vorteil dieser Ausgestaltung der Erfindung ist insbesondere darin zu sehen, dass die gesamte rechenaufwendige digitale Bildverarbeitung auf die Seite des rechenleistungsstarken Server-Rechners verlagert wird und der Client-Rechner sehr leistungsschwach ausgestaltet sein kann, so dass Client-Rechner mit sehr leistungsschwachen Prozessoren verwendet werden können im Rahmen einer qualitativ hochwertigen digitalen Bildverarbeitung.

Von den Client-Rechnern werden keine rechenaufwendigen Operationen und Algorithmen der digitalen Bildverarbeitung durchgeführt.

Somit kann das erfindungsgemäße Computersystem Client-Rechner enthalten, welche als Embedded-Systems eingerichtet sind und beispielsweise in einem Mobilfunkendgerät integriert sind, beispielsweise in einem Mobilfunktelefon. Selbst mit einem solch leistungsschwachen Endgerät ist es erfindungsgemäß möglich, qualitativ hochwertige digitale Bilder auf sehr einfache Weise unter Verwendung eines kleinen und nicht ressourcenintensiven Browserprogramms digitale Bilder ohne zusätzlichen Installationsaufwand darzustellen.

Die erste Farbraumdarstellung und/oder die zweite Farbraumdarstellung sind/ist gemäß einer Ausgestaltung der Erfindung eine der folgenden Farbraumdarstellungen : RGB-Farbraumdarstellung, sRGB-Farbraumdarstellung,<BR> CMYK-Farbraumdarstellung,<BR> HLS-Farbraumdarstellung.

Als Interpretersprache kann die Interpretersprache Javascript, die Interpretersprache VB-Script oder die in dem Internet Explorer- Computerprogramm Version 5.5 und neuer integrierte Interpretersprache Jscript verwendet werden.

Die oben genannten Interpretersprachen bieten einen ausreichend mächtigen Befehissatz zur Realisierung der in dem Zusammenhang der Darstellung digitaler Bilder erforderlichen Funktionen.

Die in der Bilddatenbank eingespeicherten Bilder können insbesondere folgende Bereiche enthalten, nämlich den Gesichtsbereich einer Person, den Haarbereich einer Person, d. h. den Bereich innerhalb des digitalen Bildes, in dem die Haare einer Person dargestellt sind, sowie einen Hintergrundbereich.

Jedes digitale Bild, welches in der Bilddatenbank gespeichert ist, kann gemäß der oben beschriebenen Ausgestaltung der Erfindung eine Menge von drei Teilbildern, welche als separate digitale Bilder oder als ein zusammenhängendes digitales Bild gespeichert sein kann, aufweisen. In einem ersten Teilbild des digitalen Bildes ist der Gesichtsbereich, der Haarbereich und der Hintergrundbereich enthalten, d. h. dargestellt, in einem zweiten Teilbild des digitalen Bildes ist nur Information über den Haarbereich, im Folgenden auch bezeichnet als Haarmaske, enthalten, und in einem dritten Teilbild ist nur Information über den Hintergrundbereich enthalten, im Folgenden auch bezeichnet als Hintergrundmaske.

Durch das Bereitstellen dieser drei Arten von digitalen Teilbildern wird eine sehr einfache und damit hinsichtlich der benötigten Rechenzeit kostengünstige digitale Bildverarbeitung ermöglicht.

Die digitalen Bilder können in grundsätzlich jedem beliebigen Bildcodier-Format codiert sein, beispielsweise in JPEG-Bildformat, in GIF-Bildformat, in TIFF- Bildformat, in PNG-Bildformat, in BMP-Bildformat oder in TGA-Bildformat.

Gemäß einer anderen Ausgestaltung der Erfindung ist es vorgesehen, dass zu einer gleichen Person eine Mehrzahl von digitalen Bildern aufgenommen und in der Bilddatenbank gespeichert sind, wobei die digitalen Bilder perspektivische Darstellungen der Person von unterschiedlichen Betrachtungswinkeln aus repräsentieren. Vorzugsweise sind die Perspektiven der Mehrzahl von Bildern derart gewählt, dass unter Verwendung aller digitalen Bilder der gleichen Person aus unterschiedlichen Perspektiven eine quasi-dreidimensionale Darstellung der Person implementierbar ist.

Vorzugsweise ist bei ausreichender zur Verfügung stehender Rechenleistung vorgesehen, aus der verfügbaren Bildinformation ein dreidimensionales Modell des Kopfes und des Haarbereichs der Person zu berechnen und dieses Simulationsmodell als digitales Bild an den Client-Rechner zu übertragen.

Eine sehr einfache Möglichkeit zur quasi-dreidimensionalen Darstellung einer Person auf einem Client-Rechner ist darin zu sehen, dass die Mehrzahl der digitalen Bilder der jeweiligen Person an den Client-Rechner übertragen wird und dort mittels des Browserprogramms als sequentielle Bildfolge einem Benutzer dargestellt wird.

Gemäß einer anderen Ausgestaltung der Erfindung sind das Browserprogramm und das Browser-Serverprogramm eingerichtet zur Verarbeitung von Daten, welche gemäß einer Beschreibungssprache, beispielsweise der Hypertext Markup Language (HTML), der Vektor Markup Language (VML) und/oder der Wireless Markup Language (WML), codiert sind.

Der Client-Rechner ist vorzugsweise derart eingerichtet, dass das digitale Bild in einem vorgegebenen Bildschirmoberflächenbereich einer Bildschirmoberfläche darstellbar ist und dass in dem vorgegebenen Bildschirmoberflächenbereich vor Darstellung des Bildes bei Laden des Bildes von dem Server-Rechner in den Client-Rechner eine Ladezustandsanzeige dargestellt wird, wobei mit der Ladezustandsanzeige dem Benutzer der Verlauf des Ladevorgangs dargestellt wird. Anders ausgedrückt bedeutet dies, dass in dem für die spätere Darstellung des digitalen Bildes vorgesehenen vorgegebenen Bildschirmoberflächenbereich ein an sich bekannter"Ladebalken"dargestellt wird, der den Verlauf des Herunterladens des jeweiligen digitalen Bildes von dem Server-Rechner in den Client-Rechner repräsentiert.

Auf diese Weise bekommt der Benutzer des erfindungsgemäßen Browserprogramms eine sehr gute Vorstellung darüber, wie lange er noch bis zur Darstellung des angeforderten digitalen Bildes warten muss, wobei vorteilhafterweise diese Information in dem vorgegebenen Bildschirmoberflächenbereich dem Benutzer dargestellt wird, in dem er später auch das angeforderte digitale Bild dargestellt bekommt, wodurch der Nutzerkomfort weiter erhöht wird.

Der Client-Rechner, vorzugsweise das Browserprogramm, ist gemäß einer anderen Ausgestaltung der Erfindung derart eingerichtet, dass eine Veränderung des Skalierung des in dem Bildschirmoberflächenbereich des Browserprogramms dargestellten digitalen Bildes möglich ist.

Bei dem erfindungsgemäßen Verfahren ist es gemäß einer Ausgestaltung der Erfindung vorgesehen, dass von dem Client-Rechner eine Bildänderungs- Anfragenachricht an den Server-Rechner übertragen wird. Mit der Bildänderungs- Anfragenachricht wird eine Änderung der Bildinformation des an den Client- Rechner übertragenen digitalen Bildes angefragt. Von dem Server-Rechner wird nach Empfang der Bildänderungs-Anfragenachricht unter Verwendung eines in dem Server-Rechner installierten Bildverarbeitungsprogramms, welches eingerichtet ist zur Veränderung der Farbinformation von Bildpunkten eines digitalen Bildes, das digitale Bild gemäß der Bildänderungs-Anfragenachricht verändert und das veränderte digitale Bild wird anschließend von dem Server- Rechner an den Client-Rechner übertragen. Von dem Client-Rechner wird das empfangene veränderte digitale Bild mittels des Browserprogramms einem Benutzer dargestellt.

Das erfindungsgemäße Computersystem und das erfindungsgemäße Verfahren eignen sich insbesondere für den Einsatz zur Darstellung, Auswahl und Veränderung von Frisuren und Haarfarben in digitalen Bildern einer oder mehrerer Personen sowohl im privaten Bereich als auch im professionellen Bereich, beispielsweise bei einem Friseur, im Rahmen einer professionellen Haarfarbberatung, einer professionellen Typberatung, im Bereich der Kosmetik, etc.

Ein Ausführungsbeispiel ist in den Figuren dargestellt und wird im Folgenden näher erläutert.

Es zeigen Figur 1 ein Blockdiagramm, in dem ein Kommunikationsnetz mit einem Server- Rechner, einer Mehrzahl von Datenbanken und eine Vielzahl von Client-Rechnern dargestellt ist ; Figur 2 Teilbilder eines digitalen Bildes, wobei in einem ersten Teilbild der Gesichtsbereich, der Haarbereich und der Hintergrundbereich einer Person gezeigt ist, in einem zweiten Teilbild Information über den Haarbereich der Person enthalten ist und in einem dritten Teilbild Information über den Hintergrundbereich enthalten ist ; Figur 3 ein Nachrichtenflussdiagramm, in dem der Austausch von elektronischen Nachrichten und die Verarbeitung der einzelnen elektronischen Nachrichten zur quasi-dreidimensionalen Darstellung einer Folge von digitalen Bildern dargestellt sind ; Figur 4 ein Nachrichtenflussdiagramm, in dem der Austausch elektronischer Nachrichten zwischen dem Server-Rechner und dem Client-Rechner zur Darstellung genau eines zweidimensionalen digitalen Bildes dargestellt sind ; und Figur 5 ein Nachrichtenflussdiagramm, in dem ein erfindungsgemäßer Cache- Mechanismus zur Verkürzung der Ladezeit von digitalen Bildern beschrieben ist.

Fig. 1 zeigt in einem Blockdiagramm 100 einen Server-Rechner 101, welcher einen Prozessor 102, einen Speicher 103 sowie eine erste Eingangs- /Ausgangsschnittstelle 104 und eine zweite Eingangs-/Ausgangsschnittstelle 105 aufweist. Die einzelnen Komponenten des Server-Rechners 101 sind mittels eines Computerbusses 106 miteinander zum Austausch elektrischer Signale gekoppelt.

Der Speicher 103 kann ein Festplattenspeicher, ein RAM-Speicher (ein flüchtiger oder ein nichtflüchtiger RAM-Speicher, beispielsweise ein DRAM-Speicher oder ein Flash-Speicher) und/oder ein ROM-Speicher (beispielsweise ein PROM, ein EPROM oder ein EEPROM) sein. Der Speicher 103 kann ferner mehrere Speicherkomponenten aufweisen. Vorzugsweise sind ein Festplattenspeicher, ein RAM-Speicher und ein ROM-Speicher als Speicherkomponenten des Speichers 103 vorgesehen.

Mittels der zweiten Eingangs-/Ausgangsschnittstelle 105 ist der Server-Rechner 101 mit einer ersten Datenbank 107 und einer zweiten Datenbank 108 gekoppelt.

In dem Speicher 103 ist in einem Speicherverzeichnis eine Vielzahl von digitalen Bildern gespeichert, anders ausgedrückt sind die digitalen Bilder in, einer als Bilddatenbank eingerichteten Speicherverzeichnis-Struktur gespeichert.

In diesem Zusammenhang ist anzumerken, dass unter einer Bilddatenbank erfindungsgemäß eine Verzeichnisstruktur in einem lokalen Speicher 103 des Server-Rechners 101, in dem die digitalen Bilder gespeichert sind, zu verstehen ist oder eine zusätzliche Datenbank (nicht gezeigt), mit welcher der Server- Rechner 101 gekoppelt ist.

Mittels der ersten Eingangs-/Ausgangsschnittstelle 104 ist der Server-Rechner 101, vorzugsweise über einen Firewall-Rechner (nicht gezeigt) und/oder über eine Internet-Proxy-Rechner (nicht gezeigt in Fig. 1) mit einem öffentlichen Kommunikationsnetz 109 gekoppelt, welches auf dem TCP/IP- Kommunikationsprotokollstack zur Übertragung digitaler Daten basiert.

Mit dem im Folgenden auch als Internet bezeichneten Kommunikationsnetz 109 und damit mit dem Server-Rechner 101 gekoppelt sind eine Vielzahl von Client- Rechnern 110,. wobei jeder Client-Rechner 110 eine Eingangs- /Ausgangsschnittstelle 111, einen Prozessor 112 und einen Speicher 113 aufweist, welche mittels eines Computerbusses 114 miteinander gekoppelt sind.

Jeder Client-Rechner 110 ist mit einer Bildanzeigeeinheit, beispielsweise einem Bildschirm, gekoppelt, auf der die digitalen Bilder, wie im Folgenden noch näher erläutert wird, dargestellt werden.

In dem Speicher 113 ist ein Browserprogramm, gemäß diesem Ausführungsbeispiel das Browserprogramm Internet Explorer Version 5.5 gespeichert, welches von dem jeweiligen Prozessor 112 ausgeführt wird.

In dem Speicher 103 des Server-Rechners 101 ist ein Microsoft Internet Information Server Version 5.0 als World Wide Web-Browser-Serverprogramm gespeichert.

Ferner ist in dem Speicher des Server-Rechners 101 ein Internet Server Application Programming Interface (ISAPI) gespeichert, welche im Rahmen des Ausführungsbeispiels zur Bereitstellung unterschiedlicher Bildverarbeitungsfunktionen verwendet wird.

Weiterhin ist das Computerprogramm ASP. Net in dem Speicher 103 des Server- Rechners 101 gespeichert zur Erzeugung eines in der jeweils verwendeten Beschreibungssprache codierten Datenstroms, gemäß diesem Ausführungsbeispiel der Erfindung zur Erzeugung eines Hypertext Markup Language-Datenstroms (HTML-Datenstrom), wenn es von dem Prozessor 102 des Server-Rechner 101 ausgeführt wird.

In der ersten Datenbank 110, welche als MySQL-Datenbank eingerichtet ist, sind folgende Informationen zu einem digitalen Bild gespeichert : eine Bildverweisangabe, mit der auf den physikalischen Speicherort des referenzierten digitalen Bildes in dem Speicher 103 des Server-Rechners 103, d. h. in der Bilddatenbank, verwiesen wird ; eine Haarfarben-Angabe, mit der mit einer Haarfarbe aus einer Menge vorgegebener möglicher Haarfarben die Haarfarbe der in dem jeweiligen digitalen Bild dargestellten Person angegeben wird ; eine Zählerangabe, mit der die Anzahl von Bildern der jeweiligen Person, d. h. eine Angabe, ob zu der jeweiligen Person genau ein digitales Bild in der Bilddatenbank gespeichert ist oder mehrere digitale Bilder, aufgenommen von unterschiedlichen Perspektiven ; eine Angabe, ob das referenzierte digitale Bild aktiv ist oder nicht, d. h. ob es von einem Browserprogramm angezeigt werden darf oder nicht ; Haarfarb-Colorationsprodukt-Angaben, welche insbesondere enthalten : eine Colorationsprodukt-ldentifikationsangabe, mit der das jeweilige Colorationsprodukt eindeutig identifizierbar ist ; eine Colorationsprodukt-Serien-Identifikationsangabe, mit der die Colorationsprodukt-Serie, der das jeweilige Colorationsprodukt zugeordnet ist, eindeutig identifizierbar ist ; eine Namensangabe zur eindeutigen namentlichen Bezeichnung des referenzierten Colorationsprodukts ; Aktivierungsangabe, mit der angegeben wird, ob das jeweils referenzierte Colorationsprodukt aktiviert ist, d. h. verwendet werden darf, oder nicht.

In der zweiten Datenbank 111 sind zu den jeweils angebotenen Produkten, gemäß diesem Ausführungsbeispiel zu Produkten von der Firma Henkel KGaA, diesen zugeordnete Farbinformationen gespeichert, insbesondere Farbinformationen darüber, wie Farb-Codierinformationen bei der Färbung eines jeweiligen Haar- Typs zu verändern ist, um zu einer möglichst realen darzustellenden Ziel- Haarfarbe zu gelangen.

In diesem Zusammenhang wird gemäß diesem Ausführungsbeispiel der Erfindung unterschieden in folgende unterschiedliche Haarfarb-Typen : Extra Hellblond, Hellblond, <BR> <BR> Mittelblond,<BR> Dunkelblond,<BR> Hellbraun, Mittelbraun, Dunkelbraun, und Schwarz.

Die Farbinformation dient zur Transformation der Haarfarbe ausgehend von einer Ausgangs-Haarfarbe vor erfolgter Colorierung zu der Haarfarbe als Colorationsergebnis, wobei im Rahmen der Transformation insbesondere folgende Bildcodierungs-Informationen verwendet werden : Farbwert (Hue), Farbsättigung, Haarfarb-Transparenz, Haar-Flächigkeit, Kontrast, Haar-Glanzlichter.

In dem Speicher 103, d. h. auf der Festplatte des Server-Rechners 101, sind in einem Dateiverzeichnis als Bilddatenbank die digitalen, vorgefertigten digitalen Bilder, wie sie im Folgenden noch näher erläutert werden, gespeichert in der Größe 810 x 270 Bildpunkte, codiert als JPEG-Datei.

In einer bevorzugten Ausführungsform der Erfindung ist das digitale Bild aufgebaut wie in Fig. 2 dargestellt.

Das digitale Bild 200 weist drei Teilbilder 201,202, 203, (jeweils mit 270 x 270 Bildpunkten) realisiert als Teilbild-Felder, codiert jedoch als ein einziges digitales Bild, auf, wobei in einem ersten Teilbild 201 das Gesamtbild einer Person mit Schulterbereich 204, Gesichtsbereich 205, Haarbereich 206 und Hintergrundbereich 207 dargestellt ist.

Das zweite Teilbild 202 weist eine gemäß dem Ausführungsbeispiel der Erfindung manuell zuvor erstellte Haarmaske 208 auf, welche den Bereich, in dem sich Haare der Person befinden, angibt.

Ein drittes Teilbild 203 des digitalen Bildes 200 weist eine Hintergrundmaske 209 auf, mit der der Hintergrundbereich des digitalen Bildes angegeben wird.

Das zweite Teilbild 202 und das dritte Teilbild 203 dienen zur späteren einfachen Berechnung von Farbtransformationen und zur Überblendung von einer dargestellten Person durch einen vorgebbaren veränderbaren Hintergrund.

Wie im Folgenden noch näher erläutert wird, ist es in einer alternativen Ausgestaltung der Erfindung ferner vorgesehen, durch einen Benutzer eines Client-Rechners 110 ein digitales Bild einer Person aufzunehmen und den Haarbereich und/oder den Hintergrundbereich manuell zu definieren und diese manuell erstellten Teilbilder in der Bilddatenbank abzuspeichern.

In Fig. 3 ist in einem Nachrichtenflussdiagramm 300 der Nachrichtenaustausch zur Darstellung von digitalen Bildern zur quasi-dreidimensionalen Darstellung und Manipulation von Bildern zwischen dem Client-Computer 110 und dem Server- Computer 101 und einigen derer Komponenten, insbesondere der in dem Server- Rechner 101 installierten ISAPI und dem Speicher 103, dargestellt.

Gibt der Benutzer 301 des Client-Rechners 110 eine Anforderung 302 auf die Start-Seite des von dem Web-Browser-Serverprogramms des Server-Rechners 101 bereitgestellten Bildverarbeitungssystem ein, so wird von dem Client-Rechner 110, eine erste HTTP-Anfragenachricht 303 (HTTP-Request) an den Server- Rechner 101 gesendet, mit der das Übertragen der Start-Seite des Bildverarbeitungssystems von dem Server-Rechner 101 an den Client-Rechner 110 angefordert wird.

In einer ersten HTTP-Antwortnachricht 304 (HTTP-Response) wird die Start-Seite des Bildverarbeitungssystem im HTML-Format an den Client-Rechner 110 übertragen und dort von dem Browserprogramm des Client-Rechners 110 dem Benutzer 301 dargestellt (Block 305).

Auf der Start-Seite ist dem Benutzer 301 eine Auswahlmöglichkeit gegeben dahingehend, ob der Benutzer 301 eine quasi-dimensionale Darstellung von digitalen Bildern einer Person wünscht oder die Bildverarbeitung einer zweidimensionalen Darstellung einer Person.

Im Folgenden wird zunächst davon ausgegangen, dass der Benutzer 301 des Client-Rechners 110 eine quasi-dreidimensionale Darstellung von digitalen Bildern einer Person wünscht.

Eine entsprechende Auswahlinformation 306 wird von dem Benutzer in den Client- Rechner 110 eingegeben und von diesem in einer zweiten HTTP- Anforderungsnachricht 307 an den Server-Rechner 101 gesendet, woraufhin von dem Server-Rechner 101 die in der Bilddatenbank verfügbaren ersten Teilbilder 201 mit 270 x 270 Bildpunkten der digitalen Bilder 200 mit 810 x 270 Bildpunkte bestehenden Format herunterskaliert werden auf eine vorgegebene Kleinformat- Größe mit 76 x 76 Bildpunkten.

Dies erfolgt dadurch, dass der Server-Rechner 101 der ISAPI 308 einen entsprechenden Befehl 309 übergibt, in dem die gewünschten digitalen Bilder angegeben sind, welche herunterskaliert werden sollen.

Die ISAPI greift auf die Bilddatenbank in dem Speicher 103 zu und liest von dort die in dem Befehl 308 angegebenen digitalen Bilder 311 mittels eines Lesebefehls 310 aus.

Anschließend skaliert die ISAPI 308 die eingelesenen digitalen Bilder 311 mit einem an sich bekannten Verfahren der digitalen Bildverarbeitung auf das Zielformat mit 76 x 76 Bildpunkte herunter und bildet herunterskalierte Kleinformatbilder 312, welche dem Server-Rechner 101 bereitgestellt werden.

Die herunterskalierten Kleinformatbilder 312 werden von dem Server-Rechner 101 in einer zweiten HTTP-Antwortnachricht 313 an den Client-Rechner 110 übertragen und dort mittels des Browserprogramms dem Benutzer 301 dargestellt (Block 314). Bei dem Client-Rechner 110 ist eine Auswahl eines der dargestellten F<leinformatbilder 312 durch den Benutzer 301 möglich.

Wählt der Benutzer nunmehr eines der dargestellten Kleinformatbilder 312 aus, welches er in quasi dreidimensionaler Darstellung betrachten möchte, so wird eine entsprechende Auswahlinformation 315 an den Client-Rechner 110 übergeben und von diesem an die ISAPI des Server-Rechners 101 in einer dritten HTTP- Anforderungsnachricht 316 übertragen.

Gemäß diesem Ausführungsbeispiel der Erfindung sind zur quasi- dreidimensionalen Darstellung der Bilder einer Person in der Bilddatenbank zu jeder Person 36 digitale Bilder, aufgenommen aus unterschiedlichen Perspektiven in der Bilddatenbank in dem Speicher 103 gespeichert.

Die 36 digitale Bilder. wurden entlang der Körperachse aus jeweils 10° unterschiedlicher Perspektive aufgenommen derart, dass aus den 36 digitalen Bildern eine quasi-dreidimensionale Darstellung der Person ermöglicht ist.

Gemäß diesem Ausführungsbeispiel der Erfindung werden somit zu der ausgewählten Person die zuvor gespeicherten 36 digitalen Bilder 318 von der Festplatte mittels der ISAPI 308 mittels eines zweiten Lesebefehls 317 ausgelesen und über den Server 101 in einer dritten HTTP-Antwortnachricht 319 an den Client-Rechner 110 übertragen und dort in dessen Speicher 113 abgespeichert.

In der zweiten HTTP-Antwortnachricht 304 ist die gesamte HTML-Struktur der auf dem Bildschirm des Client-Rechners 110 darzustellenden HTML-Seite enthalten, insbesondere eine Angabe über den vorgegebenen Bildschirmoberflächenbereich, in dem die digitalen Bilder 318 zu deren quasi-dreidimensionaler Darstellung dem Benutzer 301 dargestellt werden sollen.

Gemäß diesem Ausführungsbeispiel der Erfindung sind alle Jscript- Steuerbefehissequenzen in der zweiten HTTP-Antwortnachricht 304 enthalten und werden in dieser an den Client-Rechner 110 übertragen mit Ausnahme derjenigen, für welche im Folgenden beschrieben ist, dass sie in einer anderen HTTP- Nachricht von dem Browser-Serverprogramm des Server-Rechners 101 an den Client-Rechner 110 übertragen werden.

Dies bedeutet anders ausgedrückt, dass auch schon der Bildschirmoberflächenbereich innerhalb der HTML-Seite bekannt ist, in dem die digitalen Bilder 318 nach erfolgtem Herunterladen von dem Server-Rechner 101 dargestellt werden sollen.

Während des Herunterladens der 36 digitalen Bilder 318 wird dem Benutzer 301 des Client-Rechners 110 auf dem Bildschirm in dem für die Anzeige der 36 digitalen Bilder 318 vorgesehenen Bildschirmoberflächenbereich mittels eines dynamischen Objektes, welches einen"Ladebalken"dargestellt, angezeigt, welcher anschaulich eine Ladezustandsanzeige bereitstellt, womit dem Benutzer quantitativ angezeigt wird, wie weit der Ladevorgang der 36 digitalen Bilder 318 von dem Server-Rechner 101 zu dem Client-Rechner 110 fortgeschritten ist.

Die Darstellung des Ladebalkens ist erfindungsgemäß gemäß der Interpretersprache Jscript realisiert, wobei die Jscript-Befehissequenz in der zweiten HTTP-Antwortnachricht 304 als zusätzliche Steuerinformation von dem Server-Rechner 101 an den Client-Rechner 110 übertragen wird.

Sind alle 36 digitalen Bilder 318 zur quasi-dreidimensionalen Darstellung der Person in dem Client-Rechner 110 gespeichert, so erfolgt automatisch das Starten einer Quasi-Rotationsdarstellung der geladenen digitalen Bilder 318 in dem dafür vorgesehenen Bildbereich Bildschirmoberflächenbereich der HTML-Seite mittels des Browserprogramms (Block 320).

Dies erfolgt erfindungsgemäß dadurch, dass in einem vorgebbaren Zeitintervall nacheinander alle 36 digitalen Bilder in geeigneter Reihenfolge (Perspektive des aufgenommen Bildes von 0° sukzessive wachsend um 10° von 0° bis 360°) in dem dafür vorgesehenen Bildbereich dem Benutzer 301 dargestellt werden, wodurch der Eindruck einer sich um die eigene Körperachse drehenden Person erweckt wird.

Die Geschwindigkeit der Quasi-Rotation, anders ausgedrückt, das Zeitintervall zwischen der Darstellung zweier zeitlich aufeinander folgender digitaler Bilder, welche jeweils in einer Perspektive aufgenommen worden ist, welche sich um 10° unterscheidet, kann von dem Benutzer 301 mittels eines in der HTML-Seite dem Benutzer 301 zur Auswahl dargestellten Auswahlelements, beispielsweise ausgestaltet als Schieberegler, verändert werden.

Die Realisierung dieser Funktion erfolgt erfindungsgemäß ebenfalls unter Verwendung einer in Jscript formulierten Befehlssequenz.

Es ist in diesem Zusammenhang darauf hinzuweisen, dass sowohl die Berechnung und Darstellung des Ladebalkens als auch das zeitlich aufeinanderfolgende Darstellen der Vielzahl digitaler Bilder einer Person zur Quasi-Rotation ausschließlich clientseitig durchgeführt wird.

Anders ausgedrückt, nach erfolgtem Laden der 36 digitalen Bilder 318 ist zur Quasi-Rotationsdarstellung keine Kommunikationsverbindung mehr zwischen dem Client-Rechner 110 und dem Server-Rechner 101 erforderlich.

Ferner ist dem Benutzer 301 gemäß dem Ausführungsbeispiel der Erfindung die Möglichkeit gegeben, die Haarfarbe, d. h. die Farbe der sich in dem Haarfarbbereich befindlichen Bildpunkte gemäß einer vorgegebenen Farbtafel, welche in der zweiten Datenbank 108 gespeichert ist, zu verändern.

Wählt der Benutzer 301 diese Option aus, so sendet der Client-Rechner 110 nach erfolgter Anweisung 321 durch den Benutzer 320 eine vierte HTTP- Anforderungsnachricht 322, in der von dem Server-Rechner 101 das Übermitteln einer Farbtafel und einer Auswahl von unterschiedlichen auswählbaren Hintergrundbildern angefordert wird.

In der Farbtafel ist zu einer jeweiligen Ausgangs-Haarfarbe eine Menge von gemäß dem angebotenen Colorierungsprodukten vorgesehener Ziel-Farben enthalten. Die Angabe der Haarfarbe der ausgewählten Person ist in der ersten Datenbank 110 gespeichert, wie oben beschrieben wurde.

Die jeweilige Farbtafel ist für eine jeweilige Grund-Haarfarbe in der zweiten Datenbank 108 gespeichert.

Der Server-Rechner 101 liest aus der zweiten Datenbank 108 die Farbtafel und eine ebenfalls dort gespeicherte Menge unterschiedlicher vorgegebener Hintergrundbilder aus und sendet diese in einer vierten HTTP-Antwortnachricht 323 an den Client-Rechner 130, welcher mittels des Browserprogramms die Farbtafel und die unterschiedlichen Hintergrundbilder dem Benutzer in der HTML- Seite darstellt (Block 324).

Nach Auswahl eines Hintergrundbildes und/oder einer Ziel-Farbe, in welche der Benutzer die Haarfarbe der Person ändern möchte, wird die Auswahlinformation 325 in den Client-Computer 110 eingegeben und von diesem an den Server- Rechner 101 in einer Farbänderungs-Anfragenachricht 326 übertragen, weiche von dem Server-Rechner 101 an die ISAPI 308 weitergegeben wird.

Von der ISAPI 308 wird unter Verwendung der in der zweiten Datenbank 108 gespeicherten Farbinformation und der in der ersten Datenbank 107 gespeicherten Farbinformation über die Grund-Haarfarbe der Person die sich ergebende darzustellende Haarfarbe berechnet mittels eines an sich bekannten Verfahrens der digitalen Bildverarbeitung und entsprechend werden den Bildpunkten des Haarbereichs, welcher durch die Haarmaske 208 in dem jeweiligen zweiten Teilbild 202 gegeben ist, die entsprechenden Farbwerte zugeordnet.

Die Farbwerte der Bildpunkte in dem Haarbereich 206, wie er durch die Haarmaske 208 definiert ist werden somit transformiert. Ferner wird gegebenenfalls bei erfolgter Auswahl eines spezifischen Hintergrundbildes der Hintergrundbereich 207, wie er durch die Hintergrundmaske 209 definiert ist, durch das ausgewählte gespeicherte Hintergrundbild ersetzt.

Die auf diese Weise von der ISAPI 308 jeweils gebildeten 36 veränderten Bilder 327 werden in einer Verändert-Bild-Nachricht 328 von dem Server-Rechner 101 an den Client-Rechner 110 übertragen und dort von dem Browserprogramm in dem vorgegebenen Bildschirmoberflächenbereich als veränderte Bilder 327 dargestellt an Stelle der ursprünglichen 36 digitalen Bilder (Block 329).

Dies geschieht gemäß diesem Ausführungsbeispiel für alle 36 Bilder 318 der ausgewählten Person.

Der Benutzer 301 kann mittels ihm von auf der HTML-Seite dargestellter dynamischer Auswahlobjekte die dargestellten Bilder lokal in dem Speicher 113 des Client-Rechners 110 speichern, kann die Bilder in einer elektronischen Nachricht an andere Rechner weiterversenden oder die Bilder in einem Nutzer- Profil lokal oder in dem Server-Rechner 101 abspeichern.

Damit ist die quasi-dreidimensionale Bildverarbeitung beendet.

Wählt der Benutzer 301 auf der Start-Seite die Option aus, nur ein zweidimensionales JPEG-komprimiertes digitales Bild dargestellt zu bekommen und verändern zu können, so wird nach Erhalt der oben beschriebenen Start-Seite die entsprechende Auswahlinformation 401 von dem Benutzer 301 in den Client- Rechner 110 eingegeben und von diesem mittels des Browserprogramms in einer in Fig. 4 in einem zweiten Nachrichtenflussdiagramm 400 dargestellten 2D- Auswahlnachricht 402 an den Server-Rechner 101 übertragen.

Von dem Server-Rechner 101 wird in Antwort auf Erhalt der 2D- Anforderungsnachricht 402 eine 2D-Auswahl-Start-Seite in einer HTTP-Nachricht 403 an den Client-Rechner 110 übermittelt und dort dem Benutzer 301 dargestellt (Block 404).

In der 2D-Auswahl-Start-Seite wird dem Benutzer 301 des Client-Rechners 110 eine Auswahl von drei unterschiedlichen Bildquellen zur Auswahl dargestellt : ein vorgegebenes digitales Bild eines Modells, welches in der Bilddatenbank des Server-Rechners 101 gespeichert ist ; ein benutzerdefinierbares, neu in die Bilddatenbank des Server-Rechners 101 einspeicherbares digitales Bild ; oder ein in einem Benutzerprofil gespeichertes digitales Bild.

Bei Auswahl eines vorgegebenen digitalen Bildes eines Modells wird prinzipiell der oben beschriebene Ablauf zur Darstellung einer Vielzahl digitaler Bilder einer Person durchgeführt mit dem Unterschied, dass anstelle der 36 vorgegebenen und in der Bilddatenbank gespeicherten digitalen Bilder nur ein digitales Bild aus der Bilddatenbank ausgelesen und an den Client-Rechner 110 übermittelt wird.

Für die restlichen Optionen und Prozesse wird auf die obige Beschreibung verwiesen.

Entsprechendes gilt für die Auswahl eines digitalen Bildes aus dem Benutzerprofil, wobei in diesem Fall der Server-Rechner 101 oder der Client-Rechner 110 das gewünschte digitale Bild aus dem Benutzerprofil des Benutzers 301 des Client- Rechners 110 ausliest und dem Benutzer 301 zur Verfügung stellt, wie oben beschrieben.

Im Folgenden wird aus Gründen der einfacheren Erläuterung nur noch das Einspeichern eines benutzerdefinierbaren digitalen Bildes näher beschrieben.

Wählt der Benutzer 301 diese Bildquelle aus, so wird mittels einer in der HTML- Seite enthaltenen und von dem Server-Rechner 101 in der HTTP-Nachricht 403 an den Client-Rechner 110 übertragenen in Jscript formulierten Befehissequenz eine Datei-Speicherpfad-Such-Bildschirmoberfläche dargestellt, mittels der in an sich bekannter Weise (analog zu einem üblichen Datei-Auswahl- Bildschirmoberfläche wie beispielsweise bei Winword zum Durchsuchen eines Verzeichnisses und zum Speichern einer Datei in dem Verzeichnis) durch Anklicken mittels einer Computermaus eine beliebige Dateistruktur innerhalb eines oder mehrerer Speicher, mit dem der Client-Rechner 130 gekoppelt ist, durchsuchbar ist.

Ist die Bilddatei, welche das auszuwählende digitale Bild enthält, von dem Benutzer 301 ausgewählt (Block 405), so wird von dem Browserprogramm unmittelbar überprüft, ob das ausgewählte Bild mittels des Browserprogramms darstellbar ist, anders ausgedrückt, ob es in einem zulässigen Bildformat vorliegt.

Ist dies der Fall, so wird von dem Browserprogramm mittels einer zusätzlichen, ebenfalls in der HTTP-Nachricht 403 an den Client-Rechner 110 übertragenen Jscript-Prozedur (d. h. Jscript-Befehissequenz) ferner überprüft, wie groß das digitale Bild ist, d. h. wie viele Bildpunkte es enthält.

Ist das darzustellende digitale Bild zu hoch oder zu breit, so wird clientseitig eine entsprechende Skalierung auf die geforderte Bildgröße von 270 x 270 Bildpunkte vorgenommen, wobei das Skalieren erfolgt durch einfaches Weglassen von zu vielen in dem Ursprungsbild vorhandenen Bildpunkten.

Es ist in diesem Zusammenhang anzumerken, dass eine aufwendige digitale Bildverarbeitung clientseitig nicht vorgenommen wird.

Ist das darzustellende digitale Bild auf die verarbeitbare Zielgröße von 270 x 270 Bildpunkte clientseitig skaliert, so wird dieses digitale Bild mit der korrekten Zielgröße in einer Neue-Bild-HTTP-Nachricht 406 an den Server-Rechner 101 übertragen und dort in der Bilddatenbank gespeichert.

Es ist in diesem Zusammenhang anzumerken, dass eine manuelle Anpassung des digitalen Bildes in der Höhe und Breite und in der Position bezogen auf den Bildbereich innerhalb der HTML-Seite, in dem das darzustellende Bild schließlich dargestellt wird, ebenfalls optional vorgesehen ist.

Es ist darauf hinzuweisen, dass auch diese manuelle Skalierung ausschließlich durch einfaches Weglassen oder Hinzufügen von Bildpunkten mit interpolierter Bildpunktinformation zwischen den schon vorhandenen Bildpunkten durchgeführt wird, so dass in dem Client-Rechner 110 keine rechenaufwendigen Algorithmen der digitalen Bildverarbeitung implementiert sind.

Ferner ist dem Benutzer für das neu in der Bilddatenbank eingespeicherte digitale Bild ermöglicht, die Helligkeit und/oder den Kontrast der Bildpunkte zu verändern.

Dies erfolgt dadurch, dass mittels eines dem Benutzer 301 auf der Bildschirmoberfläche mittels des Browserprogramms dargestellten Schiebereglers eine entsprechende Veränderungsinformation 407, welche den Grad der Veränderung ausgehend von dem bestehenden Helligkeitsgrad bzw. Kontrastgrad bestimmt in den Client-Rechner 110 eingegeben und von diesem in einer HTTP- Veränderungsinformations-Nachricht 408 an den Server-Rechner 101 übermittelt wird.

Von dem Server-Rechner 101 wird diese Information an die ISAPI 308 weitergegeben, von welcher eine entsprechende Bildverarbeitung, d. h.

Kontraständerung und Helligkeitsänderung in dem neu eingespeicherten Bild durchgeführt, d. h. berechnet wird.

Das in seinem Kontrast und seiner Helligkeit veränderte Bild 409 wird von der ISAPI 308 mittels des Server-Rechners 101 an den Client-Rechner 110 übertragen in einer HTTP-Veränderungs-Anwortnachricht 410 und mittels des Browserprogramms in dem vorgegebenen Bildschirmoberflächenbereich in der HTML-Seite dem Benutzer 301 dargestellt (Block 411).

Ferner ist es dem Benutzer 301 gemäß diesem Ausführungsbeispiel ermöglicht, das benutzerdefinierte, in dem in dem vorgegebenen Bildschirmoberflächenbereich der HTML-Seite dargestellten digitalen Bild einen Haarbereich mittels folgenden Verfahrens durch den Benutzer manuell auf sehr einfache Weise zu definieren.

In diesem Zusammenhang wird die Vektor Markup Language (VML), welche in dem Browserprogramm Internet Explorer Version 5.5 integriert ist, verwendet, um Bildpunktkoordinaten, welche mittels einer Computermaus durch den Benutzer in dem digitalem Bild angegeben werden durch Anklicken einer vorgegebenen ersten Maustaste (vorzugsweise linke Maustaste), als Polygon-Randbildpunkte des Haarbereichs interpretiert werden, auszuwählen und in den Client-Computer 101 einzugeben (Block 412). Diese ausgewählten Bildpunkte 412 bzw. deren Bildpunktkoordinaten werden von dem Client-Computer 110 in einem VML- Bildpunktarray gespeichert.

Sind alle Bildpunkte, welche den Haarbereich definieren sollen, von dem Benutzer 301 ausgewählt und die zugehörigen Bildpunktkoordinaten in dem Bildpunktarray gespeichert, so wird mittels der VML durch Verbinden der einzelnen Bildpunkte durch Geraden ein Polygon gebildet, welches den Haarbereich bestimmt.

Es ist in diesem Zusammenhang anzumerken, dass grundsätzlich beliebig viele Bildpunkte von dem Benutzer 301 ausgewählt werden können durch einfaches Anklicken eines Bildpunktes in dem jeweiligen digitalen Bild.

Durch Anklicken eines schon ausgewählten Bildpunktes mit einer vorgegebenen zweiten Maustaste (vorzugsweise rechte Maustaste) kann ein ausgewählter Bildpunkt auch wieder entfernt werden. In diesem Fall werden die diesem Bildpunkt zugeordneten Bildpunktkoordinaten aus dem Bildpunktarray gelöscht.

Die Auswahl kann solange erfolgen, bis der Benutzer entweder angibt, dass er die Definition des Haarbereichs abgeschlossen hat oder indem der Benutzer auf einen schon zuvor ausgewählten Bildpunkt mit der ersten Maustaste klickt. Das Auswählen eines schon zuvor, vorzugsweise zuerst ausgewählten Bildpunktes wird von dem Browserprogramm als Abbruchbefehl interpretiert und es erfolgt automatische die oben beschriebene Polygonbildung.

Damit ist die Haarmaske manuell gebildet worden und die Haarmaske wird als Bildpunktkoordinaten-Menge, welche in dem Bildpunktarray gespeichert ist, in einer Bildpunktkoordinaten-HTTP-Nachricht 413 an den Server-Rechner 101 übermittelt, welcher diese Information an die ISAPI 308 übergibt, die wiederum unter Verwendung der Haarmaske ein dem digitalen Bild zugeordnetes Haarmaskenbild erzeugt und abspeichert (Block 414).

Es ist optional vorgesehen, dass der Benutzer 301 auf gleiche Weise den Hintergrund des digitalen Bildes definieren kann. In diesem Fall wird die gebildete Hintergrund-Bildpunktkoordinaten-Menge von dem Client-Rechner 110 an den Server-Rechner 101 übertragen. Die ISAPI 308 bildet in diesem Fall unter Verwendung der Hintergrundmaske (definiert durch die Hintergrund- Bildpunktkoordinaten-M. enge) ein dem digitalen Bild zugeordnetes Hintergrundmaskenbild und speichert dieses in der Bilddatenbank ab (nicht gezeigt).

Ferner ist gemäß diesem Ausführungsbeispiel der Erfindung vorgesehen, dass für das neu einzuspeichernde Bild der Benutzer Haar-charakterisierende Zusatzinformationen auswählt, beispielsweise die Haarfarbe (Hellblond, Mittelblond, Dunkelblond, Hellbraun, Mittelbraun, Dunkelbraun oder Schwarz), die Haarlänge (kurz, mittellang oder lang) und/oder die Beschaffenheit der Haare, d. h. beispielsweise, ob es sich um kräftiges oder feines Haar handelt.

Die Zusatzinformation wird nach erfolgter Auswahl ebenfalls von dem Client- Rechner 110 an den Server-Rechner 101 übertragen und dort in einem dem jeweiligen Bild zugeordneten Bilddatensatz. in der ersten Datenbank 107 gespeichert (nicht dargestellt).

Die gespeicherten neu hinzugefügten digitalen Bilder sind nunmehr in gleicher Weise verarbeitbar wie die zuvor in der Bilddatenbank eingespeicherten vorgegebenen digitalen Bilder.

Ferner ist gemäß diesem Ausführungsbeispiel der Erfindung vorgesehen, dass in einer zusätzlichen Datenbank eine Mehrzahl auswählbarer, vorgegebener Frisuren-Objekte, welche Bilder unterschiedlicher Frisuren repräsentieren, zur Auswahl gespeichert sind, wobei die Menge auswählbarer Frisuren-Objekte an den Client-Rechner 110 übertragen werden und dort in einer HTML-Seite dem Benutzer 301 dargestellt werden.

Wählt der Benutzer 301 eines der vorgegebenen Frisuren-Objekte aus, so kann er dieses als zusätzliches Bildobjekt in dem vorgegebenen Bildschirmoberflächenbereich dem dargestellten digitalen Bild überlagern, womit es ermöglicht wird, eine neue Frisur der dargestellten Person in dem zuvor ausgewählten, neu einzuspeichernden Bild zu überlagern und somit dem Benutzer 301 darstellen.

Ferner ist es für die Frisuren-Objekte vorgesehen, dass diese in ihrer Größe frei skalierbar sind und positionierbar sind, wobei diese Funktionen ebenfalls mittels Jscript realisiert sind und dem Client-Rechner 110 in der zweiten HTTP- Antwortnachricht 304 oder in einer anderen HTTP-Nachricht übertragen worden ist.

Die Frisuren-Objekte können in ihrer Farbe ebenso gemäß der jeweilige Farbtafel wählbar verändert werden.

Die oben beschriebenen Verfahren zur Überlagerung der Frisuren-Objekte bzw. zur Veränderung der Größe, Position und Farbe der Frisuren-Objekte bezüglich des in der HTML-Seite des Client-Rechners 110 dargestellten digitalen Bildes ist in entsprechender Weise für die zuvor in der Bilddatenbank eingespeicherten vorgegebenen digitalen Bilder mit vorgegebenen Personen oder auch für die digitalen Bilder aus dem Benutzerprofil vorgesehen.

Auch gemäß diesem Ausführungsbeispiel der Erfindung ist es vorgesehen, dass die digitalen 2D-Bilder gespeichert, per E-Mail versendet oder gedruckt werden.

Fig. 5 zeigt in einem dritten Nachrichtenflussdiagramm 500 einen Cache- Mechanismus, wie er gemäß einem Ausführungsbeispiel der Erfindung vorgesehen ist.

Gemäß dieser Ausführungsform der Erfindung ist es vorgesehen, dass der Client- Rechner 110 mit einem Internet-Proxy-Rechner 501 gekoppelt ist und darüber mit dem Server-Rechner 101.

Gibt der Benutzer 301 eine Anfrage 502 nach einem digitalen Bild in den Client- Rechner 110 ein, so überprüft der Client-Rechner 110, ob das von dem Benutzer 301 angeforderte digitale Bild in dem Speicher 113 des Client-Rechners 110 gespeichert ist.

Ist dies der Fall, so wird dem Benutzer 301 unmittelbar das angeforderte Bild 503 dargestellt.

Ist dies nicht der Fall, so sendet der Client-Rechner 110 eine Anfrage-Nachricht 504 mit der Angabe des angeforderten Bildes an den Internet-Proxy-Rechner 501, welcher seinerseits überprüft, ob das angeforderte digitale Bild in seinem Speicher gespeichert ist.

Ist dies der Fall, so wird, ohne eine Nachricht an den Server-Rechner 101 weiterzusenden, unmittelbar eine Antwort-Nachricht 505 mit dem angeforderten digitalen Bild an den Client-Rechner 130 übermittelt, von diesem in dessen Speicher 113 gespeichert und anschließend wird das angeforderte digitale Bild dem Benutzer 301 dargestellt (Block 506).

Hat auch der Internet-Proxy-Rechner 501 das angeforderte Bild nicht gespeichert, so gibt der Internet-Proxy-Rechner 501 die Anfrage-Nachricht an den Server- Rechner 101 weiter (Block 507), welcher seinerseits überprüft, ob es in seinem Speicher 103 oder in einem mit der ISAPI 308 gekoppelten Cache-Speicher 508 das angeforderte digitale Bild gespeichert ist.

Ist dies der Fall, so wird das angeforderte digitale Bild von dem Server-Rechner 101 an den Internet-Proxy-Rechner 501 übertragen (Block 509), dort gespeichert, von dem Internet-Proxy-Rechner 501 an den Client-Rechner 110 übertragen (Block510), dort ebenfalls in dessen Speicher 113 gespeichert und dann dem Benutzer 301 dargestellt (Block 511).

Ist das angeforderte Bild auch nicht in dem Server-Rechner 101 bzw. in dem Cache-Speicher 508 der ISAPI 308 vorhanden, so wird von der ISAPI 308 das angeforderte digitale Bild, beispielsweise mit veränderter Haarfarb-Information neu berechnet unter Verwendung der in dem oben beschriebenen Datenbanken 107, 108 gespeicherten Daten.

Das neu erzeugte digitale Bild 512 wird nach dessen Erzeugung in dem Cache- Speicher 508 der ISAPI 308 gespeichert, von dem Server-Rechner 101 an den Internet-Proxy-Rechner 501 weitergeleitet (Block 513), von diesem ebenfalls gespeichert und anschließend an den Client-Rechner 110 übermittelt (Block 514), welcher das empfangene digitale Bild seinerseits in dessen Speicher 113 speichert und anschließend dieses dem Benutzer 301 darstellt (Block 515).

Auf diese Weise wird insbesondere durch das Speichern der angeforderten digitalen Bilder in dem Internet-Proxy-Rechner 501 erreicht, dass unabhängig davon, welcher Nutzer von welchem Client-Rechner 110 das jeweilige digitale Bild anfordert, Anfragen von unterschiedlichen Nutzern nach demselben digitalen Bild schon von dem Internet-Proxy-Rechner 501 beantwortet und damit erfüllt werden können, ohne dass der Server-Rechner 101 mit einer Vielzahl redundanter Anfragen belastet wird.

Es ergibt sich somit erfindungsgemäß insbesondere die sehr vorteilhafte Verlagerung von rechenintensiven Bildverarbeitungsalgorithmen auf die Seite des Server-Rechners, womit der Client-Rechner 130 erheblich entlastet wird.

In diesem Dokument sind folgende Veröffentlichungen zitiert : [1] WO 03/020072 A1 ; [2] EP 1 324 247 A2 ; [3] Erhältlich im Internet am 5. September 2003 unter der folgenden URL-Adresse : Hypertext Markup Language : http ://www. w3. org/MarkUp/ Vector Markup Language : http : //msdn. microsoft. com/workshop/authorNML/Shape/introduction. asp