Beschreibungdescription
Verfahren und Anordnung zur Übertragung von Bildern innerhalb eines NetzwerksMethod and arrangement for the transmission of images within a network
Die Erfindung betrifft ein Verfahren zum Versenden eines Bildes innerhalb eines Netzwerks sowie ein Verfahren zum Empfangen und Darstellen eines Bildes, das innerhalb eines Netzwerks versendet wurde. Die Erfindung betrifft weiterhin die Anwendung des Verfahrens sowie eine Anordnung zum Versenden eines Bildes und zum Empfang und Darstellen eines Bildes.The invention relates to a method for sending an image within a network and a method for receiving and displaying an image that has been sent within a network. The invention further relates to the application of the method and an arrangement for sending an image and for receiving and displaying an image.
Ein mögliches Grundkonzept für Computernetzwerke stellt die Peer-to-peer Architektur dar, bei der alle Mitglieder des Netzwerks gleichberechtigt sind. Die Peer-to-peer Architektur bietet sich auch für spontan aufgebaute (Ad-Hoc) Netzwerke an, die auf kabelloser Übertragungstechnik, wie Bluetooth o- der WLAN (Wireless Local Area Network) beruhen. Die Peer-to- peer Architektur ist bei entsprechendem Aufwand bei der Netzwerkverwaltung in der Lage, flexibel mit neu hinzukommenden oder wegfallenden Mitgliedern umzugehen und setzt keine vorgegebene grundlegende Netzwerkstruktur voraus .A possible basic concept for computer networks is the peer-to-peer architecture, in which all members of the network have equal rights. The peer-to-peer architecture is also suitable for spontaneously established (ad-hoc) networks based on wireless transmission technology such as Bluetooth or WLAN (Wireless Local Area Network). The peer-to-peer architecture is able to deal flexibly with new members or members who are no longer required, and does not require a predefined basic network structure.
Wenn innerhalb des Netzwerks Daten ausgetauscht werden sollen, die jeweils alle Mitglieder erreichen sollen, beispielsweise bei der sogenannten Multicast- oder Broadcast-Technik, bietet sich ein Netzwerkprotokoll ohne Rückmeldung über den Datenerhalt an, um den Kommunikationsaufwand gering zu halten. Systembedingt lässt ein solches Netzwerkprotokoll Übertragungsfehler zu. Bei kabellosen Netzwerken, die aufgrund von Interferenzen mit anderen Punkwellen oder durch Reflekti- on des eigenen Signals bzw. durch Absorption störanfällig sind, kann dieses problematisch werden. Wenn beispielsweise
Bilder im Rahmen einer Präsentation innerhalb des Netzwerks übertragen werden, können fehlerhaft übertragene Daten dazu führen, dass zu viel Bildinformation verloren geht, um den Inhalt verständlich zu machen.If data is to be exchanged within the network that should reach all members, for example in the so-called multicast or broadcast technology, a network protocol without feedback about data retention is recommended in order to keep the communication effort low. Due to the nature of the system, such a network protocol allows transmission errors. This can become problematic for wireless networks that are susceptible to interference due to interference with other punk waves or due to reflection of their own signal or absorption. If, for example If images are transmitted within the framework of a presentation within the network, incorrectly transmitted data can result in too much image information being lost in order to make the content understandable.
Eine Möglichkeit um die Wahrscheinlichkeit, dass zu viel Bildinformation verloren geht, zu minimieren, ist das redundante Versenden der Bilddaten. Eine weitere Möglichkeit ist, die Bilddaten mit Fehlerkorrekturinformationen auszustatten. Beides führt zu einem größeren Datenvolumen bei der Übertragung, was insbesondere bei kabellosen Netzwerken mit geringen Übertragungsbandbreiten zu langen ÜbertragungsZeiten führt. Weiterhin ist eine Fehlerkorrektur angesichts der relativ geringen Prozessorleistung von tragbaren Computern (Laptops, Pocket-PCs) , die häufig bei Ad-Hoc Netzwerken zum Einsatz kommen, zu rechenintensiv.One way to minimize the probability that too much image information is lost is to send the image data redundantly. Another possibility is to provide the image data with error correction information. Both lead to a larger data volume during transmission, which leads to long transmission times, particularly in the case of wireless networks with low transmission bandwidths. Furthermore, error correction is too computationally intensive in view of the relatively low processor performance of portable computers (laptops, pocket PCs), which are often used in ad hoc networks.
Es ist daher Aufgabe der Erfindung, ein Verfahren und eine Anordnung zum Versenden sowie Empfangen und Darstellen von Bildern zu beschreiben, bei dem ohne Redundanz der Daten und ohne Korrekturverfahren die Auswirkung von Übertragungsfehlern minimiert werden.It is therefore an object of the invention to describe a method and an arrangement for sending, receiving and displaying images, in which the effect of transmission errors is minimized without redundancy of the data and without correction methods.
Die Aufgabe wird erfindungsgemäß gelöst mit den Merkmale der Ansprüche 1 und 5, was das Verfahren betrifft, sowie mit den Merkmale der Ansprüche 9 und 10, was die Anordnung betrifft.The object is achieved according to the invention with the features of claims 1 and 5 as regards the method and with the features of claims 9 and 10 as regards the arrangement.
Die Art, wie in Dateneinheiten Bildinformationen kodiert werden, bedingt üblicherweise, dass sich ein Fehler innerhalb der Dateneinheit auf die gesamte nachfolgende gespeicherte Bildinformation auswirkt. Die Erfindung minimiert die Auswirkung eines Fehlers auf den gesamten Bildinhalt dadurch, dass das Bild in Sektoren zerlegt wird, die getrennt versendet,
empfangen und dargestellt werden. Ein Fehler wirkt sich somit auf eine kleinere Informationseinheit aus, wodurch die durch den Fehler entstehende Störung im gesamten Bild verringert wird. Durch die Positionierungsinformation werden auch bei fehlenden Sektoren die übrigen Sektoren korrekt positioniert.The way in which image information is encoded in data units usually requires that an error within the data unit affects the entire subsequent stored image information. The invention minimizes the effect of an error on the entire image content by dividing the image into sectors that are sent separately, received and displayed. An error thus affects a smaller unit of information, which reduces the interference caused by the error in the entire image. With the positioning information, the remaining sectors are correctly positioned even in the absence of sectors.
Weitere Einzelheiten und Ausgestaltungen der Erfindung sind in den Unteransprüchen angegeben.Further details and refinements of the invention are specified in the subclaims.
Die Erfindung wird nachfolgend anhand von zwei Zeichnungen näher erläutert. In den Zeichnungen zeigen:The invention is explained in more detail below with the aid of two drawings. The drawings show:
Figur 1 ein Ausführungsbeispiel der erfindungsgemäßen Anordnung zum Versenden eines Bildes undFigure 1 shows an embodiment of the arrangement according to the invention for sending an image and
Figur 2 ein Ausführungsbeispiel der erfindungsgemäßen Anordnung zum Empfangen und Darstellen eines Bildes.Figure 2 shows an embodiment of the arrangement according to the invention for receiving and displaying an image.
In Figur 1 ist ein erster Computer 1 als Ausführungsbeispiel einer Anordnung zum Versenden eines Bildes dargestellt. Der erste Computer 1 weist einen ersten Bildschirm 2, Mittel zum Extrahieren der Bildinformationen 3 , einen Datenkomprimierer 4, eine Einrichtung zum Zerlegen in Pakete 5 und eine Sendeeinrichtung 6 auf, über die der erste Computer 1 mit einem Netzwerk 7 verbunden ist. Von dem ersten Bildschirm 2 wird ein Bild 11 wiedergegeben, das einen Sektor 12 aufweist. Weiterhin sind eine Dateneinheit 13, eine komprimierte Dateneinheit 14 und Pakete 15 zur Illustration des durchgeführten Verfahrens dargestellt.FIG. 1 shows a first computer 1 as an exemplary embodiment of an arrangement for sending an image. The first computer 1 has a first screen 2, means for extracting the image information 3, a data compressor 4, a device for breaking down into packets 5 and a transmitting device 6, via which the first computer 1 is connected to a network 7. An image 11 having a sector 12 is reproduced from the first screen 2. Furthermore, a data unit 13, a compressed data unit 14 and packets 15 are shown to illustrate the method carried out.
Zum Versenden eines auf dem ersten Bildschirm 2 dargestellten Bildes 11 wird dieses Bild 11 in Sektoren 12 zerlegt. Im dargestellten Beispiel ist das Bild 11 in horizontale Streifen
zerlegt, wobei jede andere, das Bild 11 komplett ausfüllende Aufteilung ebenso denkbar ist. Die Sektoren 12, von denen hier nur einer beispielhaft dargestellt ist, werden sukzessive verarbeitet. Sie werden zunächst dem Mittel zum Extrahieren der Bildinformationen 3 zugeführt, welches gemäß einer vorgegebenen Kodierungsvorschrift aus der Bildinformation des Sektors 12 die Dateneinheit 13 erstellt. Die Dateneinheit 13 wird danach dem Datenkomprimierer 4 zugeführt, der die komprimierte Dateneinheit 14 erstellt. Vorteilhafterweise setzt der Datenkomprimierer 4 Verfahren zur Lauflängenkodierung (RLE, Run Length Encoding) ein, die einen hohen Komprimierungsgrad für das Komprimieren von Bildern bieten. Bekannte Komprimierungsverfahren wie JPEG (Joint Picture Expert Group) bzw. Datenformate wie TIFF (Tagged Interleaved File Format) oder PNG (Portable Network Graphics) können hier angewendet werden. Ebenso ist möglich, dass Mittel zum Extrahieren der Bildinformation 3 und den Datenkomprimierer 4 von einer Einheit ausführen zu lassen. Die Dateneinheit 13 und/oder die komprimierte Dateneinheit 14 können sowohl im Arbeitsspeicher des Computers 1, als auch zur Zwischenspeicherung in Form einer Daten in einem nichtflüchtigen Speicher abgelegt werden. Sowohl die Dateneinheit 13 als auch die komprimierte Dateneinheit 14 enthalten neben der Bildinformation als zusätzliche Information die relative Position des Sektors 12 innerhalb des Bildes 11. Zusätzlich kann die Größe (Höhe, Breite) des Sektors 12 mit angegeben werden, falls sich diese nicht implizit aus der Kodierungsvorschrift für die Bildinformation ergibt .To send an image 11 shown on the first screen 2, this image 11 is broken down into sectors 12. In the example shown, the image 11 is in horizontal stripes disassembled, any other division that completely fills the image 11 is also conceivable. The sectors 12, of which only one is shown here by way of example, are processed successively. They are first fed to the means for extracting the image information 3, which creates the data unit 13 from the image information of the sector 12 in accordance with a predetermined coding rule. The data unit 13 is then fed to the data compressor 4, which creates the compressed data unit 14. The data compressor 4 advantageously uses methods for run length encoding (RLE) which offer a high degree of compression for compressing images. Known compression methods such as JPEG (Joint Picture Expert Group) or data formats such as TIFF (Tagged Interleaved File Format) or PNG (Portable Network Graphics) can be used here. It is also possible for the means for extracting the image information 3 and the data compressor 4 to be carried out by one unit. The data unit 13 and / or the compressed data unit 14 can be stored both in the main memory of the computer 1 and for temporary storage in the form of data in a non-volatile memory. Both the data unit 13 and the compressed data unit 14 contain, in addition to the image information, the relative position of the sector 12 within the image 11 as additional information. In addition, the size (height, width) of the sector 12 can also be specified, if this is not implicit the coding regulation for the image information results.
Die auf diese Weise vorbereitete komprimierte Dateneinheit 14 wird dann der Einrichtung zum Zerlegen der Pakete 5 zugeführt . Der Inhalt der komprimierten Dateneinheit 14 wird auf eine Folge von Paketen 15 aufgeteilt, wobei sich die Größe
der Pakete 15 nach dem eingesetzten Netzwerkprotokoll richtet. Zusätzlich wird jedes Paket 15 mit der Bezeichnung der komprimierten Dateneinheit 14 sowie einer fortlaufenden Nummer versehen. Die Pakete 15 werden daraufhin von der Sendereinrichtung 6 nacheinander in das Netzwerk 7 verschickt. Ein Netzwerkprotokoll, das das Versenden von Datenpaketen ohne den vorherigen Aufbau einer Verbindung mit Empfangsprotokoll (Handshake) erlaubt, ist beispielsweise UDP (User Datagram Protocol) , das auf dem IP (Internet Protocol) basiert.The compressed data unit 14 prepared in this way is then fed to the device for disassembling the packets 5. The content of the compressed data unit 14 is divided into a sequence of packets 15, the size of which of the packets 15 depends on the network protocol used. In addition, each packet 15 is provided with the name of the compressed data unit 14 and a consecutive number. The packets 15 are then successively sent from the transmitter device 6 into the network 7. A network protocol that allows data packets to be sent without the prior establishment of a connection with a reception protocol (handshake) is, for example, UDP (User Datagram Protocol), which is based on the IP (Internet Protocol).
In Figur 2 ist ein Ausführungsbeispiel für eine Anordnung zum Empfangen und Darstellen eines Bildes gezeigt . Ein zweiter Computer 21 ist ebenfalls mit dem Netzwerk 7 verbunden. Der zweite Computer 21 weist einen zweiten Bildschirm 22, Mittel zum Darstellen der Dateneinheit 23, einen Datendekomprimierer 24, eine Einrichtung zum Zusammensetzen von Paketen 25 sowie eine Empfangseinrichtung 26 auf . Auf dem zweiten Bildschirm 22 ist ein Bild 31 dargestellt, das aus mehreren Sektoren 32 besteht. Zur Illustration des erfindungsgemäßen Verfahrens zum Empfangen und Darstellen eines Bildes sind weiterhin eine Dateneinheit 33, eine komprimierte Dateneinheit 34 sowie Pakete 35 gezeigt.FIG. 2 shows an exemplary embodiment of an arrangement for receiving and displaying an image. A second computer 21 is also connected to the network 7. The second computer 21 has a second screen 22, means for displaying the data unit 23, a data decompressor 24, a device for assembling packets 25 and a receiving device 26. An image 31, which consists of several sectors 32, is shown on the second screen 22. To illustrate the method according to the invention for receiving and displaying an image, a data unit 33, a compressed data unit 34 and packets 35 are also shown.
Aus dem Netzwerk 7 werden von der Empfangseinrichtung 26 aufgenommene Daten zu Paketen 35 zusammengestellt . Als Folge des nicht fehlerkorrigierenden und nicht empfangsbestätigenden Übertragungsprotokolls kann es zu fehlerhaften Datenpaketen 35 kommen, wie das für ein Datenpaket in Figur 2 symbolisch dargestellt ist. Die Datenpakete 35 werden der Einrichtung zum Zusammensetzen von Paketen 25 zugeführt, die die Pakete 35 zur komprimierten Dateneinheit 34 zusammensetzt. Anhand der Zusatzinformation über die Bezeichnung der komprimierten Dateneinheit sowie der fortlaufenden Nummer können die Pakete
35 eindeutig einer komprimierten Dateneinheit 34 zugeordnet werden. Anhand der fortlaufenden Nummer kann ebenfalls festgestellt werden, ob Datenpakete 35 bei der Übertragung verloren gegangen sind. Manche Übertragungsprotokolle bieten zudem die Möglichkeit, eine Kontrollsumme zu übertragen, anhand derer die Integrität der Daten eines Pakets 35 überprüft werden kann. Verloren gegangene bzw. fehlerhafte Datenpakete 35 können nun auf verschiedene Art und Weise von der Einrichtung zum Zusammensetzen von Paketen 25 berücksichtigt werden. Es ist beispielsweise möglich, ein fehlerhaftes Datenpaket durch ein vorgegebenes Datenpaket auszutauschen, das zwar keine Bildinformationen trägt, aber sicherstellt, dass sich der Fehler nicht in den Bildinhalt der folgenden Pakete 35 fortpflanzt.Data recorded by the receiving device 26 are compiled into packets 35 from the network 7. As a result of the non-error-correcting and non-receipt-confirming transmission protocol, incorrect data packets 35 can occur, as is symbolically shown for a data packet in FIG. 2. The data packets 35 are fed to the device for assembling packets 25, which assembles the packets 35 to form the compressed data unit 34. Based on the additional information about the name of the compressed data unit and the consecutive number, the packets can 35 clearly assigned to a compressed data unit 34. The consecutive number can also be used to determine whether data packets 35 have been lost during the transmission. Some transmission protocols also offer the possibility of transmitting a checksum by means of which the integrity of the data in a packet 35 can be checked. Lost or faulty data packets 35 can now be taken into account by the device for assembling packets 25 in various ways. For example, it is possible to replace a faulty data packet with a predetermined data packet that does not carry any image information, but ensures that the error does not propagate into the image content of the following packets 35.
Die komprimierte Dateneinheit 34 wird nun vom Datendekomprimierer 24 in die nicht komprimierte Dateneinheit 33 umgewandelt, welche dem Mittel zur Darstellung der Bildinformation 23 zugeführt wird. Diese entnimmt der Dateneinheit 33 die Zusatzinformation über die Position und gegebenenfalls die Größe des Sektors 32 innerhalb des Bildes 31 und stellt diesen Sektor 32 an der angegebenen Position dar.The compressed data unit 34 is now converted by the data decompressor 24 into the uncompressed data unit 33, which is fed to the means for displaying the image information 23. This takes the additional information about the position and possibly the size of the sector 32 within the image 31 from the data unit 33 and represents this sector 32 at the specified position.
Im dargestellten Beispiel wurde ein Kodierungsverfahren eingesetzt, bei welchem die Bildinformationen zeilenweise vom oberen linken Punkt eines Sektors aus in der Dateneinheit 33 enthalten sind. Im günstigsten Fall führt ein Fehler in einem Paket 35 nur zur fehlerhaften Darstellung der in diesem Paket 35 enthaltenen Bildinformation. Im ungünstigsten Fall ist auch die Bildinformation nachfolgender Pakete 35 betroffen. In jedem Fall bleibt durch das erfindungs emäße Verfahren die Auswirkung des Fehlers auf den einen Sektor 32 beschränkt.
Der Datendekomprimierer 24 und das Mittel zum Darstellen der Bildinformation 23 können alternativ zu einer Einheit zusam- mengefasst werden. Ebenso wie im Ausführungsbeispiel von Figur 1 ist darüber hinaus möglich, die komprimierte Dateneinheit 34 und/oder die Dateneinheit 33 entweder im Arbeitsspeicher des zweiten Computers 21 abzulegen oder in Form einer Datei auf einem nichtfluchtigen Speichermedium entweder zwi- schenzuspeichern oder zur weiteren späteren Verarbeitung abzulegen.
In the example shown, a coding method was used in which the image information is contained in the data unit 33 line by line from the upper left point of a sector. In the best case, an error in a package 35 only leads to an incorrect representation of the image information contained in this package 35. In the worst case, the image information of subsequent packets 35 is also affected. In any case, the effect of the error remains limited to one sector 32 by the method according to the invention. The data decompressor 24 and the means for displaying the image information 23 can alternatively be combined into one unit. As in the exemplary embodiment in FIG. 1, it is also possible to either store the compressed data unit 34 and / or the data unit 33 in the working memory of the second computer 21 or to store it temporarily in the form of a file on a non-volatile storage medium or to store it for further later processing.
Bezugs eichenlisteReference oak list
1 erster Computer1 first computer
2 erster Bildschirm2 first screen
3 Mittel zum Extrahieren von Bildinformationen3 Means for extracting image information
4 Datenkomprimierer4 data compressors
5 Einrichtung zum Zerlegen von Paketen5 Parcel disassembly facility
6 Sendeeinrichtung6 transmitting device
7 Netzwerk7 network
11, 31 Bild11, 31 picture
12, 32 Sektor12, 32 sector
13, 33 Dateneinheit13, 33 data unit
1 , 34 komprimierte Dateneinheit1, 34 compressed data unit
15, 35 Pakete15, 35 packages
21 zweiter Computer21 second computer
22 zweiter Bildschirm22 second screen
23 Mittel zum Darstellen von Bildinformationen23 Means for displaying image information
24 Datendekomprimierer24 data decompressors
25 Einrichtung zum Zusammenfügen von Paketen25 Package assembly facility
26 Empfangseinrichtung
26 receiving device