The encoding method coordinate moving on the screen of the computing device, a video device for decoding a visual object, encoded in this way and the system is intended for visualization of active video using this device

 

The invention relates to computing and reduces the object of memory required for storage and processing of visual objects (VO). The technical result consists in reducing the amount of memory required for storage and processing markup. The method includes displaying on the monitor screen of the video image of at least one of a split frame with XY cells. Intra-frame encoding method performed by the selection of characteristic cells, coinciding with the contour and in which the circuit IN experiencing a change of form. The change in contour between the characteristic cells are approximated by the mathematical expression between control points. Introduce a local coordinate system X' and Y'. After intraframe encoding remember in the map data array of control points. 3 S. and 13 C.p. f-crystals, 22 ill., table 2.

The invention relates to computer technology and can be used in computer systems of active video (AV) or Hyper Video (HV), as well as in areas such as interactive TV, video on demand, broadcast TV over the Internet, interactive learning system, videoprovider the RA to merge hyperlinks to video, where as the encoding operation of the moving coordinate on the screen of the computer video display monitor, the video frame with the image of the at least one visual object (VO), are approximated using cue visual object a simple geometric shape such as a circle, oval, rectangle, using the author's Toolkit put a markup on a separate key frames, and layout (circle, oval, rectangle) linearly interpolate the remaining intermediate frames (international PCT application WO (98/44435, G 06 F 17/30, publ. 1998).

This technical solution is achieved compact storage data markup, but sacrificed the accuracy of the markings. Author not available, the process of marking on non-key frames. During playback of the received file after decoding, the regions of the markings on the key frames are linearly interpolated for intermediate frames. Thus, due to the linear interpolation regions markup on nonkey intermediate frames and because of the approximation IN a simple geometric shape its markup may not coincide with the location and existing valid form IN as the key video is Oy geometric shape, and not be moved along a straight line. This leads to inadequate coding of video. Subsequent decoding, for example, to view the video, when the marking is not visible on the computer monitor and do not know what the frame is the key, and what the interim, it is impossible to establish whether a valid form of a visual object and its location is approximated. This causes further difficulties, for example, in the case of activation of such object by using a click of the pointing device (mouse), because the position of the mouse cursor in reality may not be the same IN especially for the intermediate frames.

The famous "Parallel computer system of Active Video, implements and in particular a method of coding moving coordinate on the screen of the computer monitor video, which is closest to the claimed (Russian Federation Patent for the invention №2173883, G 06 T 1/20, publ. 2001).

The encoding method coordinate moving on the screen of the computer monitor of the video image includes displaying on the monitor screen of the video image of at least one visual object. Share the video frame with the visual Ozaki, the location of which coincides with, or does not match the video frame with the location of visual objects, tagging cells that coincide with the location of the cells of the visual object, the corresponding symbol and tagging other one symbol cell, the location of which does not coincide with the location of the cells of the visual object. When intra-frame coding form an array of map data for a visual object of a given video frame, and if the position of the visual object in the next frame of the video file continuously, forming a new map for these frames retain the data array of the visual object of the previous frame, and if the position of the visual object in the next frame is changed, then, forming a new map, for such frames change the data array of the visual object. Form and save the file formed by the sequence of cards in which each card corresponds to at least one video frame of the video file.

Limitations of this technical solution are:

the need to use intra-frame coding cells with zero, which does not coincide with the locations of active objects, which increases the data array when creating caracta, you must encode all cells in coordinates X, Y for education card IN that it also dramatically increases the data array;

the absence of interframe coding, which leads to redundancy of stored data.

Thus, the main limitation of this method of encoding a coordinate is IN a low speed encoding and a large array of stored data cards for each video frame.

Solved by the invention is the task of the creation of such a coding method, decoding device and system which does not require storing the coordinates of all cells IN the first and subsequent frames when exact match is found, marking IN and its location with really existing, and, thus, increase the performance and speed of encoding coordinates and the reduction of the arrays stored data, as well as providing the possibility of decoding the visual object, encoded by the claimed method by means of a corresponding device, and enabling the operation of this device in the active video.

The technical result that can be obtained by carrying out the claimed process, reducing the amount of memory required to store and brokername data for encoding of video frames with multiple.

The technical result that can be obtained when performing device - software decoding visual object, encoded by the claimed method, with maximum performance.

The technical result that can be obtained when performing the claimed system, the provision of playing active video coming from different communication channels, in real time.

To solve the problem with the achievement of the technical result in the well-known encoding method coordinate moving on the screen of the computing device, the video image including the display of the video image of at least one visual object, a division of the video frame with the visual object on X x Y cells, where X and Y coordinates are 0, 1, 2, ... , having the form of elementary squares or rectangles, select the cells whose location matches and does not match the video frame with the location of visual objects by marking cells, coincident with the location of the cells of the visual object, the corresponding symbol and by marking another symbol of cells, the location of which does not coincide with the location of the cells Viswa this video, moreover, if the position of the visual object in the next frame time, forming a new map for these frames retain the data array of the visual object of the previous frame, and if the position of the visual object in the next frame is changed, then, forming a new map, for such frames change the data array of visual object formation and memorization file formed by the sequence of cards in which each card corresponds to at least one video file, according to the invention intraframe coding is performed by selection of the characteristic cells, coinciding with the contour of the visual object and in which the contour of the visual object experiences a change in the shape, measure the coordinates of control points - centers of characteristic cells, and changing the contour of the visual object between the control points are approximated, introduce a local coordinate system X' and Y', which is characterized by a smaller number of cells than the coordinate system X and Y, and the center of one of the cells is taken for the origin of the coordinate system X' and Y' axes are parallel to the axes X and Y, when intra-frame coding form in the map array data control is and in the next frame constantly, then, forming a new map, for these frames retain the data array of the control points of the previous frame in the local coordinate system X' and Y', when changing the geometric shape and/or position of the visual object in the next frame to produce interframe coding, wherein if the position of the cells of the visual object in the next frame in the local coordinate system X' and Y' is changed, and its path is stored in the array map data of the next frame enter the parameters of the displacement vector for all control points of the visual object, if changes in the local coordinate system X' and Y' its outline, you produce mentioned intraframe encoding of the video frame, receiving the data array of the control points of the new frame, then determine the offset of matching control points in the local coordinate system X' and Y'.

Possible additional embodiments of the method in which it is advisable to:

in the local system X' and Y' visual object geometrically limited by the rectangle, which consists of the same cells as in the system of coordinates X and Y, the visual object is inscribed in the rectangle, the center began coordinate coordinates X and Y;

- when the approximation used a piecewise linear approximation;

- when the approximation used Bezier curves;

- when the approximation used cubic splines;

when intra-frame coding selection characteristic of the cells of the visual object produced by means of manual markup;

when intra-frame coding selection characteristic of the cells of the visual object produced by specifying by means of manually marking multiple of the characteristic of the cells on the path of the visual object with the automatic determination of the control points of these characteristic cells, and the visual characteristics of the visual object is automatically determined his other breakpoints;

- when interframe coding was calculated based on the offsets array of control points for the subsequent video frame code length offset axis X' and Y', and as a data array interframe coding used code displacement along the axis X' and Y';

array data interframe coding was subjected to compression by introducing into the data array information only about the displaced control points of code shift;

array data interframe coding subjected and analysis of displacements of the control points, moving in the same direction at the same distance, United by such control points in the group of consecutive control points, and these groups coding indicating the number of control points and code their total displacement;

array data interframe coding was subjected to compression using a linked list;

after compression using a linked list made the analysis of the displacements of the control points moving in the same direction at the same distance, United by such control points in the group of consecutive control points, and these groups are coded with the number of control points and code their total displacement;

in each frame of video for a visual object compared the data array intraframe encoding and interframe encoding, and if the data array intraframe coding is smaller than the data array interframe coding, the data array of the control points intraframe coding memorize the map of the video frame, and it serves to form an array of data interframe encoding the next frame.

Since the claimed method of encoding has not previously been known the milestone specified technical result is solved by the device for decoding encoded visual object contains blocks - core bus controller PCI, the core controller direct memory access, base address register, the status register, the register of the command block that provides access to the memory from the PCI controller, the block for building a visual object on the test points, in which the contour of the visual object experiences a change in shape, the unit control block for the loop visual object block to fill the area inside the contour of the visual object, the memory controller, the switch data streams to the memory block logical associations OR ready signals data, the trigger signals the readiness of the data registers, and the inputs /outputs of the mentioned units are connected by a tire through a common connection for the specified block, and the block for building a visual object has been designed to contour the visual object on the test points and made capable of receiving the coordinates of control points from the PCI bus, the approximation of the contour of the visual object and passing an array of data about all the points on the path to the bus ZBT, the block to fill the area inside the contour visual obje bus ZBT array data of all pixels of the screen, the selection of the contour points of the visual object and the points located inside the contour of the visual object on the bus ZBT, the unit control block for the loop visual object designed to support the order of coordinates of control points when applying them in a block for building a visual object.

Tasked with achieving the specified technical result is solved in that the system for visualization of active video contains a network card that is designated for receiving a digital video stream and sending the command traffic to the server active video, TV receiver intended for receiving a digital video stream from the telecentre, CPU, video decoder designed to decode an input video stream in real time and displayed on the display device audio decoder audio intended for decoding the input digital audio data stream and output it to an external system, audio playback, the device for decoding encoded visual object on the test points and labeling of cells within the outline of the visual object, the storage device intended for storage of video, audio, Yes Azania benefits and features of the present invention are explained the best options for its implementation with reference to the accompanying figures.

Fig.1 depicts a video frame with the visual object (VO);

Fig.2 is the same as Fig.1 IN inscribed in a rectangle;

Fig.3 - the formation of the contour (boundary) IN which the offset one reference point relative to another is shown by arrows;

Fig.4 - frame with the General shift IN without changing the form.

Fig.5 - frame offset IN the change form;

Fig.6 - frame with the total displacement of the group of control points of the contour IN;

Fig.7 - the encoding format information IN at meidcation encoding;

Fig.8 - change form to illustrate interframe encoding:

Fig.9 is a block diagram of the algorithm intraframe coding;

Fig.10 is a block diagram of the algorithm interframe encoding;

Fig.11 is a structural diagram of a device for the decoding of the visual object;

Fig.12 - unit building visual object on five sheets;

Fig.13 is a block circuit diagram of the filling area inside contour of the visual object on two sheets;

Fig.14 is a diagram of conformity of the memory cells of the pixels of the image;

Fig.15 is a block circuit diagram of the control bloomy.17 is a diagram of a system for the visualization of active video.

The encoding method coordinate moving on the screen of the computer monitor of the video image includes displaying on the monitor screen of the video frame (Fig.1) with the image of at least one IN. Share the video frame with the visual object on X x Y cells, where X and Y are 0, 1, 2, ... , having the form of elementary squares or rectangles. Highlight cells whose location matches and does not match the video frame with the location, tagging cells that coincide with the location of the cells of the visual object corresponding to a symbol, for example a single flag, and tagging other one symbol, for example the zero flag cell, the location of which does not coincide with the location of the cells IN, for example, as the nearest equivalent. Produce intra-frame coding, which form an array of map data for IN this video. Moreover, if the position IN the next frame of the video file continuously, forming a new map, for such videodrom retain the data IN the previous frame, and if the position IN the next frame is changed, then, forming a new map, for such frames change the array data. Next, form and save the file formed by the sequence of the coding produced by the selection of characteristic cells (Fig.1, 2), coinciding with the contour IN (Fig.1, 2), and in which the circuit to experience a change in shape. Measure the coordinates of control points - centers of characteristic cells (Fig.1). The change in contour between the characteristic cells are approximated by the mathematical expression between the control points (Fig.3 shows a piecewise linear approximation). Introduce a local coordinate system X' and Y' (Fig.1). To introduce a local coordinate system X' and Y' can in different ways, having its center closer to. To reduce the amount of encoded information is expedient IN geometrically limit the rectangle, which consists of cells, and the center of one of the cells for the coordinate system X' and Y' axes which are parallel to the axes X and Y. All internal points inside the contour are internal region, are not control points and are not encoded in the future, and are automatically set by the circuit. After intraframe encoding remember in the map frame of the data array of control points with mathematical expressions.

When changing the geometric shape and/or position IN the next frame (Fig.4-6) make it interframe coding. E the next video frame type the parameters of the displacement vector for all control points (Fig.4). If you change the position of the cells IN its path (Fig.5, 6), then produce the aforementioned intra-frame encoding of the video frame, receiving the data array of the control points of the new frame. Next, determine the offset of matching control points and encode them, and the encoded array of these displacements of the control points is used to generate array data interframe encoding.

Example of coding an offset IN the presented in Fig.4.

[1] there are changes IN

[I] shifted

[10] encode the offset pixel shifts

[011] code offset to the South-East

Example of coding an offset IN the presented in Fig.5.

[1] there is a change IN

[I] shifted

[10] encode the offset pixel shifts

[010] code offset to the East,

Coding example resizing, shown in Fig.5:

[1] there are resizing the display area;

[I] encode pixel resize

[011] the size of each side is increased by 1 cell

An example of coding of a change of form IN shown in Fig.5;

[1] there are changes in the form IN

[00] code representation form is a binary vector of displacements of the control points

[1] [estno with the previous frame is not changed

[0] 0 - point remained in place

[1] [111] 1 - point has shifted to the North-West

[1] [000] 2 - point has shifted to the North,

[0] 3 - point remained in place

[1] [100] 4 - point has shifted to the South

[1] [110] 5 - point has shifted to the West

[1] [000] 6 - point has shifted to the North,

Coding example the total displacement of the group of reference points, is shown in Fig.6:

[1] there are changes in the form IN

[10] code representation form is a binary vector of displacements of the control points with the General movement groups.

[1] [00] set encoding axes using a single-pixel shifts

[011] the group of three pixels

[1] shifted

[010] on the East,

[100] the remaining four points

[0] is not changed his position

Depending on the size of the code, obtained by interframe coding there are two ways for storing data array interframe encoding.

The first path data is that when interframe coding calculate the offsets array of control points for the subsequent video frame code length offset axis X' and Y' and as a data array interframe coding using a code displacement along the axis X' and Y'.

The second path data theologo coding. If the array data is intraframe coding is smaller than the data array interframe coding, the data array of control points with mathematical expressions intraframe coding memorize the map of the video frame, and it serves to form an array of data interframe encoding.

Thus, as an intermediate data array obtained for a single video frame may include information obtained by the first or second path. If the array data code offsets IN the frame exceeds the array of this data, obtained by intra-frame encoding, the result of the interframe coding is the result of the intra-frame coding. (For the data array IN interframe coding accepted minimum length code intermediate interframe coding or the intra-frame coding). Especially a variety of different ways, it is desirable to use, substantially changing its shape in the next frame. If an object is weakly modifies its shape, then choose the first option.

To reduce the length of the code (Fig.2) is inscribed in the rectangle. Center the origin of coordinates X' and Y' are placed in the center of the angular ball is this X' and Y' is chosen coincident with the direction of the coordinate system X and y

When intra-frame coding as mathematical expressions using piecewise linear approximation. Piecewise linear approximation is used when the circuit is IN a polygonal boundary or which do not require fine detail of the form.

When intra-frame coding as mathematical expressions can also use Bezier curves and cubic splines, which is appropriate because of their mathematical properties of smooth mating contour plots (D. Rogers, J. Adams. Mathematical foundations of computer graphics: TRANS. from English. - M.: Mir, 2001, - 604 S., ill., ISBN 5-03-002143-4, pages 260-380).

When intra-frame coding selection characteristic of the cells of the visual object is produced by means of manual markup. To manual methods of extraction of the characteristic cells includes applying markup using known tools:

Pencil - identification of the individual characteristic of cells by highlighting the cells displayed on the screen of the video frame using the pointing device (mouse);

Rectangle - identification of characteristic cells in the rectangular region on the frame by stretching the image rectangle on oblasti cells, belonging to a contour IN (similar to the "Magic wand" in the graphical editors such as Adobe Photoshop).

When intra-frame coding selection characteristic of cells IN can be performed by specifying using the tools mentioned manual marking several characteristic of cells in the visual contour of an object with automatic determination of the control of these cells characteristic of the cells, and the visual characteristics of the visual object automatically determine its other control points, for example, brightness or contrast or color (Rudakov P. I., Safonov, I. C. Processing of signals and images. Marlab 5.x/ Under the General editorship of K. T. N. C., Potemkin. - M.: DIALOG - MIFI, 2000, -416 S. -(the application software; kN.2), pp. 360-365).

The array data interframe coding is subjected to compression by introducing into the data array information only about the displaced control points of code shift (Fig.5).

The array data interframe coding can be subjected to compression using binary vector or a linked list (Aho, Alfred C., Hopcroft, John E., Ullman, Jeffrey D. data Structures and algorithms.: TRANS. s angl.: Uch. settlement - M.: Publishing house "Williams", 2000, -384, S.: ill. - Parallel. t is a linked list performs analysis of displacements (Fig.6) checkpoint moving in the same direction at the same distance, United by such control points in the group of consecutive control points, and these groups code indicating the number of control points and code their total displacement.

The video stream can be broken into logical chunks, in which a long time is displayed little of the changing composition and dynamics of many. The fragments are further broken down into a sequence of scenes. Each scene is a continuous movement. Each scene has features to display IN. The separation of these are common to all objects in the scene characteristics is important for the encoding process, helping to significantly compress the structural information in the frame, and maybe even in the scene. The next level of video data is the video, which split the scene. Here IN each positioned and has a certain form.

For all frames is entered rectangular integer grid (Fig.1) with constant parameters: discrete steps horizontally and vertically, width M and height N cells. The mesh sizes M and N are limited by the size of the display area of the video stream.

The grid is superimposed coordinate system X, Y. the Cell belongs to, the E. This grid is introduced for the entire video stream, and its parameters (number of cells, defined by their width and height) depends on the required quality of the transmitted information.

The description is included IN its position, size, shape, priority, displaying. During consecutive frames these characteristics IN can vary. The form is displayed IN a two-dimensional image (Fig.2). Informative component is its contour is the boundary, which must consists of one part, has no breaks and self-intersections, breaks the plane of the display on the inner (end) and external (infinite) field. Finding maximum and minimum values of coordinates of control points IN X and Y, define display area, and typed in her local coordinate system X' and Y'.

The form presented IN the array of control points to the approximation of the contour. The job of form IN solved at the stage of selecting an object from the video stream. Use a vector to specify the path (Fig.3). This is the initial reference point of the circuit, for example, is closest to the origin of the local coordinate system X' and Y' of the display area, and its local coordinates. Progressing in its simplicity, custom precision job outline, it is possible to scale the image without loss of quality and efficient processing algorithms. Vector format visual objects also versatile from the point of view of definition of this task, as a description of the boundaries of two-dimensional images.

The circuit IN the marked control points manually or automatically so that the difference between the real and approximate boundary was minimal. On subsequent frames of the control points are determined by the algorithms of reference, i.e., determined by the previous data path is already defined control points and a new grid-based approximation. The approximation algorithm of contour specified by the author, for example, when editing video active video.

Display the selected in frame on the screen (for example, a computer monitor) is highlighted, grid approximation of a given vo, i.e., highlighting those cells that intersect with the inner region.

Set of visual objects represent the source data for intra-frame and interframe coding. Everyone IN the frame can change the location, the dimensions of the rectangle of the display, their forms shall be new and/or disappear IN old. Visual objects can have matching cell. Scene objects can be subjected to an affine transformation is a standard camera movement: the growth plan, the rotation and movement of the camera in a straight line.

For a more flexible use of the claimed method and possible technology-coding of visual objects, for example, when used in the active video encoding format specified set of parameters. Some parameters are nezamenyaemye characteristics for the entire video stream is the geometrical parameters of the approximation mesh that is common to all configuration objects. The other part is dynamically changing depending on the nature of the scenes of the video stream.

As a possible option can be used in the following specification of the encoding format.

The format can be described in a special formal grammar is the Backus-Naur form. Symbols definitions "::=" means "is defined as ". For alternatives uses the " | " delimiter. The symbol at the end of the expression, " + " means "one or more", the symbol "*" means "zero or more" and "?" means "zero or one". Comments added in the form: <!"-comment->" or "<language> comment.

The separation of Lenogo document header and a sequence of frames, scene and preceded by an optional title scene. Each frame, in turn, consists of a list of active IN.

<document - >::=

<document title>

(the title scene? (IN frame)*)*

<title of the document>::=

<L title> the Type of the document

<V:32bit> Version /expansion (V=1.0)

<N:32bit, M:32bit> mesh Sizes

<Flags:32bit> Flag installations

<title scenes>::=

<T1> Code scene

<! - Service information in General for this scene: the settings, the encoding and set boundaries ->

</T1> Code complete title of the scene,

<frame>::=

<T2> Code list IN frame

<32> Service information for frame

<32> array Length code data in bytes

<encoded information IN the frame>

<N_OLD> Number of old IN

<AT>*N_OLD

<N_NEW> Number of new vo

(<a display area IN>

<AT>)*N_NEW

</T2> Code completion list IN frame

<a display area IN>::=

<X:bit8, Y:bit8> the Starting point of the display area IN

<W:bit8, H:bit8> Dimensions of the display area width and height

<1D:bit8> ID IN

<AT>::=

[0] - No changes or save the previous is Ichnya coordinates

[1] [1] <10> Pixel shifts

[1] [1] [10] [direct:3bit] shift code O-N, 1-NE, 2nd, ..., 7 NW

[1] [1] <11> Short coordinates

[1] [1] [11] <XX> Code length offset 00 - 3bit, 01 - 4bit, 10 - 5bit, 11 - 6 bit

[1] [1] [11] [01] <x:4bit, y:4bit> Coordinates offset iconic

<! -[X]::=[prefix]->

[X] [0] the Size of the previous

[X] <1> Size changed

[X] [1] [0] <...> Normal coordinates

[X] [1] [1] [0] <...> Pixel shifts

[X] [1] [1] [1] <...> Compressed coordinates

<!-[X]::=[prefix]->

[X] [0] Form the previous

[X] <1> Shape has changed

<a format change form>

<a format change form>::=

<! -IN some settings

can be set when creating ->

(<type>::=

<TK> Binary vector

|<T4> <2bit>

A linked list, with a bit of pointers

)?

<install-encoding X>?

<install-encoding Y>?

(<shift of the control point>)+

|(<offset checkpoint interval)*

<install-encoding axis>::=

<0> No coding

<1> Is the encoding axis

[1] <offset>

<shift of the control point>::=

(<pointer checkpoint)? <offset>

<offset checkpoint interval>::=<intifada header, which contains related and personal information. After him is the format of the list of objects in the video frame. List IN order of importance the display and on the back of the stage. The number of scenes set in code title scene. IN can be referenced on the order of access list or by its ID. New IN the scene described by the code “new object” and are dynamically complete. Old IN that you want to delete, coded code “delete”. In the list of video frame contains encoded information about all IN this video.

In Fig.7 presents the coding scheme. This format is a binary sequence of a given length. The format uses a minimum code for tags with frequent use. It is optimized minimal overall change form. Below are the options of the encoding format with different information on the dynamics of changes of the form.

To highlight groups of visual objects, as well as groups of control points of the contour used IN code tags. Thus, the encoded General dynamics minimizes information on each, delegating its corresponding Greg block in each place should be allocated to its other purpose, for example, an offset of zero, or an assigned code. Below are examples of metadata.

In Fig.8 shows the change of form IN. Points (1,2,7,8 has not changed his position, point 3 has moved down one cell, dots 4,5,6 moved down on 2 cells. For points that moved the offset on the y axis.

The compression method of the data array using the binary vector. The amount of coding information of 32 bits.

I. a Method of compressing data using a linked list with 2 bit pointers. The amount of code 36 bits.

II. The method further compression using analysis of the General movement of the first compression method. The amount of code 32 bits.

III. The method further compression using analysis of the General movement II compression method. The amount of code 29 bits.

Calculation of efficiency coding techniques IN consists in determining the degree of compression of the structural and dynamic information IN the video frames. The source information is specified in binary raster format on the grid approximation. The destination information is encoded format shermanii. Characteristics IN table 1.

The compression ratio for encoding the initial form IN (intraframe encoding).

Each control point of the path in a vector format is specified by the offset in the local coordinate system X', Y'. The dimensions of this coordinate system determines the bit width of the offset. Suppose that the distribution of control points along the contour will be uniform. Then the length of the offsets will be the same for all control points

|R|=L/K. the width coordinate of the offset will be equal to V(R)=2*log(L/K), where log denotes the logarithm to base 2. The amount of coded information on all control points will be equal to Vcod=K*V(R)=K*2*log(L/K). The maximum value is achieved when K=L/e, where e=2,71828 the base of the natural logarithm. Then Vcod=(L/e)*2*log(L/(L/e))=L*2/e*log(e)=L*1,06L. let's Make another assumption that the length of the path is proportional to the perimeter of the display area L=kP with the coefficient of proportionality k=2. We get the following estimate for the amount of coded information Vcod=L=kP=4(W+H). The volume of binary bitmap equal to the area of the display area V=W*H bits. For square areas (W=H) will receive the following volume ratio d cells, get f=16/8=2. Increasing the size of the area, we will also increase the degree of data compression. We see that for the initial order form or IN jobs IN the rapidly changing shape of this coding method is effective.

The compression ratio when interframe coding

For dynamic objects, which change the position of the border points more than their vector specifying offsets of neighboring points is passed to the new form of the border.

Will make evaluation interframe encoding dynamics IN the average case, which will offset one cell in 10% of the control points of the contour. Shifting the control points are encoded in this case, 3 bits of information. Therefore, obtain such evaluations

Vcod=10%*K*3=0,1*L/e*3=0,3*4(W+H/)/e=0,44(W+H)

f=V/Vcod=(W*H)/(0,44(W+H)))=(H*H)/0,88 H=H/0,88=1,14 H

and for H=16 will receive the compression f=18 times.

Further reduction of the amount of coded information will occur as a result of analysis of the General movement and the movement of groups of control points of the contour.

Consider the case of General motion group Q checkpoint path to adjacent cells. such movement is encoded by 3 bits. Thus, the additional degree of compression is equal to: fSS=Vcod/Vto the CSOs IN is based on the observation, for any neighboring control points of the boundary changes of coordinates on each axis X' and Y' are limited. The maximum values of these changes determine the bit width of the offset, taking into account the sign. But if for any axis length of such a code will be greater than the length of the normal coordinates, then the decision is taken in the performance of the corresponding coordinate. Such cases will be encountered very rarely, they can even be eliminated by the introduction of additional control points on the contour. Table 2 shows the lengths of codes for one of the grid axes, 256256.

The algorithm intra-frame coding is carried out as follows (Fig.9).

Unit 1. Coding procedure. Determines for each new encrypted information about its path. Consists of calls auxiliary procedures for each.

Unit 2. The input data are IN the array of coordinates of the control points of the contour. The coordinates correspond to the position of the control point grid approximation.

Unit 3. If necessary, define the display area. Finds the maximum and minimum coordinate values:

HMP, Xmax, Ymin, Ymax.

Unit 4. Definition Smania:

W=Xmax-Xmin+1, H=Ymax-Ymin+1

Unit 6. The definition of the initial control points of the contour. To do this, find the first point P (x, y) with y y=Ymin. The offset d0 this control point from the beginning of the display area on the x-axis stored in dx0=x-X0.

Unit 7. From the starting point of the border find an array of offsets between adjacent control points: dX[i]=X[i]-X[i-1], dY[i]=Y[i]-Y[i-1]

and the values of the maximum displacement on X-axis and Y:

DXmax=max{abc(dX[i]}, DYmax=max{abc(dY[i]}.

Unit 8. Defined encoding method for each axis. To do this, compare the width Dmax and W. If len(DXmax)+1 <len(W), then select the encoding with the help of displacement x[i]=dX[i] and the length of the code with respect to X is equal to LX=len(Dmax)+1, otherwise take as code local coordinates x[i]=X[i]-X0 and LX=len(W).

Similar actions are performed during encoding of the coordinates on the y-axis.

Unit 9. The output data are:

settings display area - X0, Y0, d0;

code length offset axis - LX, LY;

the number of control points - K;

arrays coded coordinates of control points - x[1:K], y[l:K].

The algorithm interframe coding is performed as follows (Fig.10).

For encoding shape changes are analyzed local DV is their changes or the presence of bias. For General motion control points of the contour is coded as the number of control points in the group and the shift itself.

The block 10. Procedure interframe coding of shape changes. Consists of auxiliary procedures (blocks 11-22). The purpose of this procedure coding for each already established IN its transmitted changes in the video frame.

Unit 11. The input data. IN the array of coordinates of the K1 control points of the current frame Point1 [Kl] with notes on new and remote control points, K0 checkpoint the previous video frame Point0 [K0]individual parameters.

The block 12. Coding reposition and resize the display area.

Unit 13. The calculation for all control points of the path of displacement on the frame relative to the position in the previous frame.

The block 14. The definition of the encoding method coordinate. Calculates the amount of codes of the displacements along the axes X’ and Y’ on the maximum displacements, taking into account the sign of the offset.

Unit 15. For all types of representation of the displacements of the control points of the circuit to calculate the amount of encoded data, using the given code length displacements of the control points along the axes X’ and Y’.

Block 16. The analysis of the General movement of the control intervals t/p>Unit 17. To choose the way, the minimum volume of coded data based on the options list view control points.

The block 18. Coding IN the as new. The calculation of the amount of encoded data.

Unit 19. Comparison of coding displacement encoding as new. Choosing the lowest option on the amount of data (described above path 1 or 2).

The block 20. Output. The encoding method coordinate the encoding circuit, the coded data of the control points of the contour.

Since the encoding order of the data array of the control points of the visual objects are defined and known, then the decoding process is carried out in reverse order. The decoding of the proposed format is structurally and provides monitoring and configuration of many parameters and decoding and the structure of the data. This process has a good performance and robust.

When decoding the greatest computational cost is the build process IN that it is expedient to increase performance to make hardware. When decoding for each frame to the device receives a set of control points on which the device should the settlement is stavki) the way IN, that is, the area occupied by the object on the screen.

The device for decoding encoded visual object (Fig.11), contains the following units: core-101 controller PCI bus, the core 102 of the controller direct memory access, register 103 of the base address register 104 command register 105 status, block 106, which provides access to a memory by a controller PCI, block 107 for building a visual of the check points, block 108 to fill the area inside the contour of the visual object, the switch 109 flows data for the memory block 110 logical associations OR data ready signals, the trigger signal 111 readiness data registers, the controller 112 of the memory, unit 113 of the control unit 107 for building visual object. The inputs/outputs of these blocks are connected by a tire by means of the model compounds used in the controllers computers and known from the prior art. Units 101-106, 109-112 are typical. Blocks 107, 108, 113 are developed in accordance with the claimed device. Block 107 for building visual object is designed to contour the visual object on the test points. Block 108 to fill the area inside the contour of the visual the 07 build path IN is designed to control the operation unit 107 for building visual object.

Inputs and outputs of the circuit are of the PCI bus 114 and ZBT 115. The PCI bus 114 is designed to exchange information with the main processor and shared memory RS. Bus ZBT 114 is designed to exchange information with the local RAM-based memory chips family ZBT SRAM company Micron.

The core 101 bus controller PCI is designed to integrate the device into a PC through the PCI bus. For this purpose, the core 101 provides processing of requests to write to and read from memory by the three address ranges BAR0, BAR1 and BAR2. The direct values of start addresses ranges are determined during initialization of the device in the RS means Plug nPlay. When accessing the memory cells of the address range BAR0 is contacting the registers 103, 104, 105, respectively BASE_ADR, CAMMAND and STATUS, which have respectively the following addresses: BAR0+0x04, BAR0+0x08 and BAR0+0x0C. General reset of the device is performed by the transaction record through the bus PCI address BAR0+0x00. When accessing the memory cells of the address range BAR1 is accessed, if it is permitted to the local memory of the device. When accessing the memory cells of the address range BAR2 are accessing the registers of the core 102 of the DMA controller.

The register 103 BASE_ADR is to set the base When writing to this register 103, the signals of the PCI bus 114 is converted by the core 101 of the controller in the PCI local signals coming respectively numbered in Fig.11 bus) 118 access to the registers A_ADR - local address register, APP_ADI 119 - the data to be written _BARHIT 120 - number address range conversion (1 - BAR0, 2 - BAR1, 4 - BAR2), APP_MASTER 121 - mode, T_WR 122 - signal recording, T_WE 123 - signal maintenance account. After issuing units on zero discharge tires T_BARHI 120 that indicates that you are accessing the registers 103, 104, 105 device, be decoding the address on the bus APP_ADR 118. If this address is equal to h and on line T_WR 122 of the display unit, on line REG_DRDY 163 issued unit that after the merger OR in block 110 with other similar signals DMA_DRDY 133 and MEM _DRDY 146 and the signal T_DRDY width 17, stands for the kernel 101 controller PCI that register 103 BASE_ADR ready to write the values shown on the tire APP_ADI 119. After the issuance of units on line T_WE 123 the engine controller permits the entry in the register 103. When performing a read from the register 103 mechanism is similar to, but after decoding the address and number of the range in the presence of on line T_RD 124 units, the register 103 puts on the bus APP_ADO 116 its value simultaneously with the issuance of units on line REG_DRDY 163. The core 101 controller PCI after receiving the signal T_DRDY 117 puts on the PCI bus 114 contents of register 103 BASE_ADR.

Similarly writes and business is ICOI 5 cycles T_WE 123.

The register 105 STATUS is available from the PCI bus read-only, and has an address HS. The register 105 STATUS is the Union of the signals on buses DrawLine _Finish 137, Fill_Finish 138, Fill_Error 139 and Fill_int 140. When accessing this register 105 to the PCI bus 115 set the 4-bit word composed of the above signals.

The device carries out its work based on the contents of register 104 COMMAND. To set a new mode, you must write to this register 104 is a new command.

00 - NOP no operation

During device initialization, resetting and when recording in the register 104 COMMAND values h scheme goes into standby mode when no computation on the device is not carried out, the local memory bus 115 is disabled and does not allow changing the stored values.

01 - access memory in target mode for reading and writing

When writing to a register 104 COMMAND values 001 switch 109 MUX connects to the bus _ADR 160 bus BURST_ADR 143, bus _DI 161 bus BURST_DO 144, bus 162 MEM_WR bus 145 BURST_WR. Accordingly, in their turn signals on tires BURST_ADR 143, BURST_DO 144, MEM_DO 141 and BURST_WR 162 are combined with signals on tires APP_ADR 118, APP_ADI 119, APP_ADO 116, La bus DRDY 142, equal to the unit, and the signal bus _DRDY 146 when recording in BAR1 will be writing information to the local device via the controller 112 of the ZBT memory. When reading from BAR1 similarly will be provided access to information in local memory.

02 - access memory in the master mode for reading and writing

Similarly, the mode of memory access in target mode, but in block 106 BURST BUFFER bus BURST_ADR 143 is connected to an internal counter unit 106, the initial state is set by the value of the signal BASE_ADR bus 134, bus BURST_DO 144 is connected to the bus FIFO_out 128, bus FIFO_in 125 bus _DO 141, and on the basis of transmitted signals on tires FIFO_out TE 129, FIFO_out_AE 130, FIFO_in_TF 131, FIFO_in_AF 132 and DRDY signal 142 will be calculated signals _WR 162 to write to or read from the local memory device, FIFO_in_WR 126 for recording in all core 102 of the DMA controller and the signal FIFO_1_RD 147, which on the switch 109 MUX when the team h will be output as signal FIFO_out_RD 127 for reading from the queue kernel DMA controller 102. Therefore, after configuring the kernel 102 DMA controller to read or write RAM RS data from the local memory device will be rewritten in the General PC memory when reading from it the core DMA controller 102 is performed by the recording command information in its control registers, available for circulation at the addresses BAR2.

03 - building contour

When writing to a register 104 COMMAND values h from the switch 109 MUX bus E_ADR 160 is connected to the bus DrawLine_ADR 154, bus _DI 161 bus DrawLine_DO 155 and signal MEM_WR 162 is combined with the signal DrawLine_WR 153. Signal FIFO_2_RD 159 generated in block 113 DrawLine Control, switch MUX 109 is combined with the signal FIFO_out_RD 127. Therefore, after configuring the kernel 102 DMA controller for reading the array of control points of the contour and appearance of the signal StartIn equal to the unit activates the block 113 DrawLine Control. This unit 113 under the condition of equality of the flag FIFO_out_TE 129 zero carries out the reading of the first two control points from the kernel queues 102 DMA controller bus FIFO_out 128. Unit 107 converts them into direct coordinates at the beginning and end of the segment contour by drawing on bus X1 149, x2 150, 151 Y1 and Y2 152 corresponding values. Unit 113 generates on line DrawLine_Start 148 momentum is equal to the unit length in one step, which is used to run unit 107 DrawLine. End unit 107 DrawLine symbolizes unit on line DrawLine_Finish 137, after receipt of which the block 113 DrawLine Control performs a read from the queue engine 102 DMA controller one who cut the path. Thus, work will continue to calculate all the control points in the kernel queues 102. Block 107 DrawLine after receiving the start signal bus DrawLine _Start 148 and the start and end points of a segment circuit starts the calculation of the coordinates of all other points on the path from the memory at the calculated coordinates and the value of the signal on the bus BASE_ADR 134 reads the values stored in the memory, the calculated point of a segment of the loop are installed in the unit.

04 - fill the area inside the constructed contour

When writing to a register 104 COMMAND values h from the switch 109 MUX bus MEM_ADR 160 is connected to the bus FILL_ADR 157, bus MEM_DI 161 bus FILL_DO 158 and the signal EM_WR 162 is combined with the signal FILL_WR 156. After the signal on the bus StartIn 136 activates the block 108 to FILL. Since the address stored in the register 103 BASE_ADR block 108 FILL sequentially read from the memory cell, fills the internal space of the circuit symbols, for example, units, and again writes the data cell to the old memory location. If in the process of filling area inside contour occurred hardware bugs, on the bus line Fill_Error 139 will be offered the unit at the end of the fill region in which/p>05 is a modification of the constructed contour

When writing to a register 104 COMMAND values h from the switch 109 MUX bus MEM_ADR 160 is connected to the bus DrawLine_ADR 154, bus MEM_DI 161 bus DrawLine _D 155 and signal MEM_WR 162 is combined with the signal DrawLine _WR 153. Signal FIFO_2_RD 159 generated in block 113 DraweLine Control, switch MUX 109 is combined with the signal FIFO_out_RD 127. Therefore, after configuring the kernel 102 DMA controller for reading array data modification flooded the field and after the occurrence of a signal on the bus 136 StartIn equal to the unit activates the block 113 DrawLine Control. Unit 113 under the condition of equality of the flag FIFO_out_TE 129 zero performs the reading of data of the first control point to modify of kernel queues 102 DMA controller bus FIFO_out 128. Unit 113 converts it into a direct coordinates at the beginning and end of the segment contour by drawing on bus X1 149, x2 150, 151 Y1 and Y2 152 corresponding values. Coordinates at the beginning and end of the segment of the path will be the same. Then unit 113 generates on line DrawLine_Start 148 momentum is equal to the unit length in one step, which is used to run unit 107. End unit 107 DrawLine symbolizes unit on line DrawLine_Finish 137, after receipt of which is and and puts on bus X1 149, x2 150, 151 Y1 and Y2 152 corresponding values for the modification of the next checkpoint. Thus, work will continue to calculate all points in kernel queues 102 DMA controller. Block 107 DrawLine after receiving the start signal bus DrawLine_Start 148 and coordinates to modify the inner region contour of the visual object on the calculated coordinates and the value on the bus BASE_ADR 134 reads the values stored in memory. The calculated point in the memory cell is installed in the unit, combined by logical XOR unit 110 with the old value and retaining the same unaffected information is again written to the local memory bus 115.

06 - clear the memory for the loop

When writing to a register 104 OMMAND 06 through switch 109 MUX bus MEM_ADR 160 is connected to the bus FILL_ADR 157, bus MEM_DI 161 bus FILL_DO 158 and the signal EM_WR 162 is combined with the signal FILL_WR 156. After the signal on the bus StartIn 136 activates the block 108 to FILL. With the starting address stored in the register 103 BASE_ADR, block 108 FILL sequentially reads through the bus 115 from the local memory cells it contains the former place. Upon completion of the work will be set equal to one signal on the bus Fill_Finish and equal to one signal on the bus Fill_int 140. So, after work all the cells in the specified region of the local memory will be reset.

07 - reserved

As can be seen from the description of the operation of the circuit (Fig.11), the unit 107 is configured to receive the coordinates of control points from the PCI bus, the approximation circuit IN and passing an array of data about all the points on the path IN the bus ZBT. The block 108 is configured to receive from the bus ZBT array data of all pixels of the screen, highlight the contour points and the points located inside the contour, and passing an array of data about all the points located inside the path IN the bus ZBT. The block 113 is arranged to support the order of coordinates of control points when applying them in block 107.

Thus, the device provides a using block 107 forming the contour of the visual object on the test points and the block 108 to fill the area inside the contour of a visual - labeled cells within the circuit, and the control unit 107 is a block 113. Constructive implementation of the remaining units 101-106 109-112 is typical and isst depicts separate the connected parts of the General scheme) includes the following elements:

the status register (201, state, REG)

the comparator(202, 203, 214, 215, 216, 227, 307, 310),

adders(204, 205, 209, 212, 232, 233, 235, 237, 247, 248, 260, 261, 269, 270),

register weighting factor Inc l (208, Inc l REG)

the multiplier on 2 (206, 207, 210, 213, 234, 236),

register weighting factor Inc2 (211, Inc2 REG)

register X coordinates of the end control point end (217),

register Y coordinates of the end control point Yend (220),

logical And(218, 219, 221, 222, 223, 224, 229, 231, 238, 239, 243, 245, 249, 251, 254, 262, 264, 267, 279, 282, 286, 287, 288, 289, 291, 292, 294, 295, 297, 298, 300, 301, 302, 303, 304, 305, 304, 311, 313, 315, 316, 317, 318, 352),

logical OR(225, 241, 250, 252, 253, 255, 257, 258, 263, 265, 268, 272, 273, 275, 277, 280, 283, 285, 290, 293, 296, 299, 306, 309, 312, 314, 353, 354),

register modification S (226),

D-trigger(228, 230, 242, 244, 274, 278, 281),

register the weighting factor D (240),

the case of the calculation of the X coordinate of the visual object (246),

the register 32 pixels of the raster image of the visual object data (256),

the register calculate the Y coordinates of the visual object (259),

the address register ADR (271),

RS trigger (276),

the register output of a visual Dout (284),

the register outputs the coordinates of the visual object out (407),

the register outputs the coordinates of the visual object ut (408).

Description of inputs and outputs:

LK(321) - input global clock frequency,

Enable (323) - resolution work,

Estimate (324) signal that determines the mode of operation for the correction of visual object

DRDY (325) - the flag on the availability of input data for processing,

BASE_ADR (31:0) (319) - base address location of the screen in the local memory device,

DIN (31:0) (320) - the next 32 bits of a visual object,

X1(10:0) (327) - the x-coordinate of the beginning of the segment contour,

X2(10:0) (328) - the X coordinate of the end segment of a path,

Y1(10:0) (329) - the Y coordinate of the beginning of the segment contour,

Y2(10:0) (330) - the Y coordinate of the end segment of a path,

ADR (31:0) (391) address read/write the calculated points of the path segments,

DOUT (31:0) (393) - the computed 32-bit image of the visual object,

Finish (395) output, which defines the end of the construction of a segment of a path,

Pixel (394) - signal, the masking calculation of the next point of a segment of a path,

RD (397) signal, a masking treatment in the memory read high,

RD_WR (396) signal, a masking treatment in memory to record low levels,

Xout (10:0) (409) - the X coordinate of the calculated point of a segment of a path,

Yout (10:0) (410) - the Y coordinate of the calculated point of a segment of a path,

Block 107 Drawline for building visual object implements the modified algorithm B is calculated coordinates of these points thus to the intersection of this memory with the straight line y=const crossing is made only at one point of the raster. When building a direct Estimate (324)=0) on the calculated coordinate value is written unit built on a “logical or” with the old value. When correction (Estimate (324)=1) on the calculated coordinate value is written units built on logical exclusive or with the old value. The scheme is built on the principle of a finite state machine. The machine can be in one of the 21 possible States. State Lwait (355) - the waiting started. State Lstart (356) is the first step. State Lxmody (357) - state calculation start coordinates consistent with increasing X coordinates and calculate the corresponding values of Y coordinates. State Lymody (358) - state calculation start coordinates consistent with increasing Y coordinates and calculate the corresponding values of the X coordinates. State LX1Mody (359): status of calculation of the X and Y coordinates when moving from the reference point X1 to x2. State LX2Mody (360) - state calculation of the X and Y coordinates when moving from the reference point x2 to X1. State LY1Mody (361) - state calculation of the X and Y coordinates when moving from the reference point Y1 to Y2. Status is a being read is stored in the memory information to make back-calculated points, belonging to the contour, when moving from X1 to x2. State LX2Read (364) - the state of reading stored information to make back the calculated points of the line segment of the path when moving from x2 to X1. State LY1Read (365) - state reading stored in the memory information to make back the calculated points for the segment of the path when moving from the reference point Y1 to Y2. State LY2Read (366) - the state of reading stored information to make back the calculated points for the segment of the path when moving from the reference point Y2 to Y1. State LX1Step (367) - the formation of a 32-bit cell, accounting for the old memory values and the calculated coordinates of the new points of the line segment of the path when moving from the reference point X1 to x2. State LX2Step (368) - the formation of a 32-bit cell, accounting for the previous memory values and the calculated coordinates of the new points of the line segment of the path when moving from x2 to X1. State LY1Step (369) - the formation of a 32-bit cell, accounting for the old memory values and the calculated coordinates of the new points of the line segment of the path when moving a control point from Y1 to Y2. State LY2Step (370) - formation of a 32-bit cell, accounting for the previous memory values and the calculated coordinates of the new points of the line segment of the path when moving from KOENJI from the reference point X1 to x2. State LX2Write (372) - the state of the record the new values of the 32-bit cell in the memory when moving from x2 to X1. State LY1Write (373) - the state of the record the new values of the 32-bit cell in the memory when moving from Y1 to Y2. State LY2Write (374) - the state of the record the new values of the 32-bit cell in the memory when moving from Y2 to Y1. Condition Lend (375) - the state of the end of the build process is a straight line segment of the path. For establishment of any uses signals on the bus: SetLWait (331), SetLStart (332), SetLXMody (333), SetLYMody (334), SetLX1Read (335), SetLX2Read (336), SetLY1Read (337), SetLY2Read (338), SetLX1Write (339), SetLX2Write (340), SetLY1Write (341), SetLY2Write (342), SetLX1Mody (343), SetLX2Mody (344), SetLY1Mody (345), SetLY2Mody (346), SetL1Step (347), SetLX2Step (348), SetLY1Step (349), SetLY2Step (350), SetLEnd(351). Signals are generated when passing these on the diagram (Fig.12) logic elements. When units on the signals 363, 364, 365 and 366 single pulses appear on the signals 398, 399, 400 and 401. These pulses, the length of one clock cycle, intended for forming the signal reading RD (397) and write RD_WR(396). At the initial stage of the operation unit 107 is able Lwait (355). After receipt of the unit at the inlet 326 Start circuit enters a state Lstart (356). In this state, an analysis of the input control points. The absolute difference is(402) more DY (DY=ABS (Y2-Y1)) (403) to the comparator (216), further, when calculating the coordinate of the control point will be necessary at each stage to modify the X coordinate (380) and depending on the state of weighting coefficients (386, 404, 405 and 384) to calculate the Y coordinate (376). In the opposite case Vice versa. If DX>DY (406), the circuit enters state LXMody (357), otherwise, if DX<=DY (407), in LYMody (358). In the new state is determined, what direction, if for the case when DX>DY (406), X1 is less than x2 (387) or more (389), for the initial control point calculation method is adopted, the point X1, and for the end Xend (217) - the point x2. Otherwise Vice-versa. For the case when DX<=DY, similar steps are performed for the Y coordinate and the calculated value of tire 390 (Y1>=Y2 bus 329 and 330, respectively) and 388 in the opposite case. Thus, in the state LXMody (357) and LYMody (358) calculation of weight coefficients Inc1 (404), Inc2 (405), D (384) and S (386). These ratios and the value of the second coordinate is calculated in accordance with the algorithm of Bresenham. On the basis of the values of D (384) determines whether to modify the coordinate at which the entire line is minimal change.

The analysis values of the bus 384 is made on the comparator 227 and the result is issued to the bus 3 is t, after reading in the received cell adds a new point, and if the next planned test point will lie in a given cell of the local memory, the recording of the received data in the memory. The algorithm runs until until you've built the required direct with piecewise linear approximation. The end of the build process line is determined by the achievement of the coordinates calculated point (bus 376 and 380) finite values of (bus 377 and 381). This analysis is performed on the Comparators 202 and 203. The result, accordingly, is issued on the bus 378, 379, 382 and 383.

At the end of the building is given a Finish signal (395), equal to the unit, and the block 107, passing through the state Lend (375), enters the state Lwait (355) to wait for new data to build the next stretch of the path.

As described above, the block 107 allows to approximate the contour to pass array data from all points on the path to the bus ZBT.

Block 108 to fill the area inside the contour of the visual object (Fig.13) based on the principle of a finite state machine.

In one memory cell is 32 points area of the screen. The location of the cells at the addresses and correspond to the points screen image shown in Fig.14. The memory cells of Raspopova. When reading the cell i, where i is the current number of cells that receive information about the 32 points of the screen in accordance with the above-described algorithm of fill placed 32 flag. On the basis of these flags is written the new value for this cell and moves to cell i+1. After going through all values of i from 0 to 1023, fills the part, which is located in the 32 columns of the screen. Reset the flag (the flag is automatically set to 0 to the approach to the last cell of the column, but if it is not 0, an error occurred while building the circuit), it will be necessary to move to the next column of cells, which stores information about 32 adjacent columns of the image screen. Having, thus, all the pixels of the screen are colored all the points that belong to the specified area.

The unit 108 includes the following elements:

the status register circuit (501, State, Reg)

counter X coordinate of the read points, located inside the contour (502, Xrd Count+32),

counter Y coordinates of the reading points AT (503, Yrd Count+1),

counter X coordinate record (504, Xwr Count+32),

counter Y coordinates write (505, Ywr Count+1),

the comparator "<1023" (506, 507, 536),

the comparator"=1023" (508, 510, 525, 528),

the comparator "<991" (509, 511),

the comparator"=992"(527, 530),

compared 534, 537),

logical exclusive OR (519),

the address counter read 514, ADR_rd Count+1),

the address counter write (515, ADR_wr Count+1),

the adder (516, 518),

register address conversion memory (517, ADR REG)

register flags painted point (520, Flags REG)

data register for writing into memory (522, DO REG)

D-trigger (523, 524, 544),

RS-trigger (543, 546).

Description of inputs and outputs:

CLK (549) - input global clock frequency,

RST (550) - input global reset signal,

Enable (551) - signal enable,

Start (556) - input of the start of the filling process of the cells inside the contour,

DRDY (552) - signal the availability of data for processing at the entrance,

Erase (553) signal that determines the mode of operation for cleaning the screen,

INT_Enable (554) signal authorizing the issuance of the interrupt signal upon completion of the work,

RESET_INT (555) - reset signal interrupt,

BASE_ADR(31:0) (547) - base address location of the screen in the local memory device,

D1 (31:0) (548) - the next 32-bit image,

ADR (31:0) (577) - address to read/write the next 32-bit image,

DO (31:0) (579) - the computed 32-bit image,

ERROR (584) - flag, symbolizing error when filling area inside contour,

Finish (586) output, which defines the end of the fill area is I to determine when a data request,

INT (580) - the interrupt signal indicating the completion of the process.

Block circuit 108 based on the principle of a finite state machine. The machine has 5 States state specified by the State register REG (501) denoted by the unit on one of its outputs corresponding to the specified state.

State Lwait (562) - the initial state waiting to start operation of the machine. State Lread (563) - state read from the memory cell open circuit. State Lwrite (564) - the state of the record in the memory cell shaded contour. State LWriteNOP (565) - blank entries, called several times at the beginning of the operation of the machine, but until the data is ready in memory, no recording is taking place. The state of Lint (566) - the state of the machine. To establish a particular state machine uses signals SetLWait (557) (during formation of this signal is part of the function is calculated separately and generates a signal 582), SetLRead (558) (during formation of this signal is part of the function is calculated separately and generates a signal 583), SetLWrite (559), SetLWriteNOP(560) and SetLInt(561), which are produced in accordance with the selected logic elements (Fig.13). The operation of the machine is possible with the equality of the Enable signal (551) unit. When paaul is given by the sum of the base address BASE_ADR (547) and the internal address counter read (514), the value of which is issued on the bus 575, exit RD (581) is issued to the unit. Simultaneously there is an increase in per unit of the address counter read (514) and the increase in the values of the counters X and Y coordinates read (503 and 502) to 32 (if the value of the counter 503 reached a value equal to 1023, and the value of X does not exceed the value of 991, the result of the comparison is outputted to the signal 568) and 1, respectively, if Y is less than the value of 1023 (unit 270), the values of these counters are issued on the bus 567 and 569. Since the address in memory pipelined and it takes some time, then data from memory will appear on the sign-DI (548) only after a few cycles, what symbolizes unit input DRDY (552). And as data for processing yet, the machine on a single quantum state is LwriteNOP (565), and then again returns to the condition Lread (563). And again, a call is made for the next code word. After input DRDY (552) will be a unit, the machine after state Lread (563) enters the state Lwrite (564), the value of DO (579) for recording is formed in accordance with the logical elements (shown in Fig.13), i.e. the Association of a logical OR (521) reading DI (548) and flag values (578). When atmosheric modification of the values of the address counter write (515), the value of which is issued on the bus 576. The counters X and Y counters coordinates write (504 and 505) increase by 32 (if the value of the counter 505 has reached a value equal to 1023, and the value of X does not exceed the value of 991, the result of the comparison is given in 572) and 1, respectively, if Y is less than 1023 (unit 274), the values of these counters are issued on the bus 571 and 573, and the address ADR(577) is calculated as the sum of the base address BASE_ADR (547) and the counter value write (515), the signal RD_WR (585) is set to zero. Thus writes the new calculated value in the memory. Also Lwrite (564) is the calculation of values of flags (520) as a Union of the logical XOR of the previous flag values (578) and the new reading DI (548). Upon reaching the counter Y coordinates read (503) value equal to 1023, it resets and increase the value of the counter X coordinates read (502) 32. Likewise modified the counters X and Y coordinate record (504 and 505). Upon reaching the counter Y coordinates read (505) value equal to 1023, is forced zeroing eflags (520), if by this time the value was not zero, the Error signal (584) is set in units is of IKI X and Y coordinate record (504 and 505) will not accept values equal 992 and 1023, respectively, indicating that processing of all pixels of the screen. In this case, if the signal Int_Enable (554) equal to one, then the machine will go into a state of Lint (556) with simultaneous generation unit to output Int (580) and will stay in this state until the unit at the entrance Reset_Int (555).then go into a state Lwait (562).

If the signal Int_Enable (554) equal to zero, the machine will immediately go into a state Lwait (562). In any case, when data transitions of the signal value Finish (586) will be installed in the unit, which indicates the end of the work machine and will stay there until the next startup of the machine.

Thus, the block 108 is executed to receive data array of all the pixels of the screen, highlight the contour points and the points located inside the circuit, for transferring data array of all the points located inside the path IN the bus ZBT.

Block 113 DrawLine Control (Fig.15) performs the operation unit 107. The unit consists of the following elements:

the status register (601, State, REG)

intermediate register X coordinates of the reference point of the end of the segment circuit (602, 2temp REG)

intermediate register Y coordinates of the reference point of the end of the segment circuit (604, Y2temp REG)

intermediate register X coordinate the beginning of the segment circuit (609, Y2temp REG)

register modification initial control points of the segment circuit (606, Move),

register change the value of the X coordinates of the initial control points of the segment circuit (610, DX)

register change the value of the Y coordinate of the starting control point of the segment circuit (611,DY),

register X coordinates of the initial control points (612, X1) cut contour,

register X coordinates of the end control point of the segment circuit (617, x2),

register Y coordinates of the initial control points of the segment contour (614, Y1)

register Y coordinates of the end control point of the segment circuit (616, Y2),

the adder (613, 615),

D-trigger (618, 621, 624),

logical OR(603, 605, 607, 620, 623, 626, 631, 635, 638),

logical And(619, 622, 625, 627, 628, 629, 630, 632, 633, 634, 636, 637, 639, 640).

Description of inputs and outputs:

CLK (643) - input global clock frequency,

RST (644) - input global reset signal,

Start (674) - output start the process of calculating the coordinates of points of a segment of a path,

Enable (645) - resolution work,

Estimate (646) signal that determines the mode of correction IN,

FIFO_TE (642) signal is "True Empty" from the input FIFO queue engine 102 DMA controller.

FIFO_In (31:0) (641) - output the input FIFO queue kernel DMA controller 102, Finish (647) - Finish signal from block 107 DrawLine,

02 DMA controller.

X1(10:0) (670) - coordinate of the reference point X the beginning of the segment contour,

X2 (10:0) (672) - coordinate of the reference point X of the end segment of a path,

Y1(10:0) (671) - coordinate of the reference point Y the beginning of the segment contour,

Y2 (10:0) (673) - coordinate of the reference point Y end segment of the path.

For building a visual object from a set of straight lines, for example, if a piecewise linear approximation must be given in block 107 DrawLine coordinates of control points. After filing the initial control point (X1:Y1) and end control points (x2:Y2), building lines and signal receiving Finish (647), the initial control point is assigned previous to the final control point, get a new core control point, which is appointed by block 113 final, while based on the value of Move (665) are calculated modification DX (668) and DY (669) for the new start point. The description format of the control points shown in Fig.16.

X coordinate is the X coordinate of the next checkpoint,

The Y coordinate is the Y coordinate of the next checkpoint,

Move - change flag X and Y coordinates of this reference point when her appointment as the starting point for construction of a segment of a path,

If:

Move=0 then CCW is added to the vector (1,-1),

Move=3, the coordinates (X,Y) is added to the vector (1,0),

Move=4, the coordinates (X,Y) is added to the vector (1,1),

Move=5, the coordinates (X,Y) is added to the vector(0,1),

Move=6, the coordinates (X,Y) + vector (-1,1),

Move=7, the coordinates (X,Y) + vector (-1,0),

Move=8, the coordinates (X,Y) is added to the vector (-1,-1).

This transformation makes it possible to avoid incorrect fill cells inside the path IN the points at the junction of two lines. For correction as start and end points of the circuit block 13 are given the coordinates of the point for the correction, and the signal Estimate (646) is assigned a unit value.

Block circuit 113 DrawLine_Control built on the principle of a state machine. The machine has 7 States, state specified by the State register REG (601) denoted by the unit on one of its outputs corresponding to the specified condition. State Lwait (656) - the initial state waiting to start operation of the machine. State LgetPoint1 (657) - condition of obtaining a coordinate of the first control point from the queue. State LgetPoint2 (658) - condition of obtaining a coordinate of the second control point from the queue. State LdrawLineSrart (659) - the state began the process of building a segment of the path. Sottosezione, prior to receiving the first control point is used to analyze the availability of data in the queue. State LestimateStart (662) - the state of the beginning of the modification process area. To establish a particular state machine uses signals SetLWait (649), SetLGetPoint1 (650), SetlGetPoint2 (651), SetLDrawLineStart (652), SetLDrawLine (653), SetLGo (654) and SetLEstinateStart (655),which are produced in accordance with the logical elements (Fig.15). The operation of the machine is possible with the equality of the Enable signal (645) unit. When the unit input StartIn (648) the machine moves from the initial state Lwait (656) in the state of Lgo(661), and subject to the availability of data in the input queue FIFO_in (641) (flag Fifo_TE (642) is not equal to one) enters the state LgetPoint1 (657) and carries out the reading of the first word from the queue in the intermediate register 2temp (602), Y2temp (604) and Move (606). To read the code word from the queue signal Fifo_RD (675) placed in the unit. After reading the first word, the machine enters a state LgetPoint2 (658) if the signal Estimate (646) equal to zero, and in the state LestimateStart (662) otherwise. Able LgetPoint2 (658) is forwarded from the intermediate registers 2temp (602), Y2temp (604) values in the intermediate registers Xltemp (608) and Yltemp (609), and the calculation of SnoVanis queues in the intermediate register 2temp (602), Y2temp (604) and Move (606). Then jump to the state LdawLineStart (662) with setting the appropriate values in the registers starting X1 and Y1 (670 and 671) and the end of x2 and Y2 (672 and 673) control points. For the initial checkpoint before its value is written to the register, it is added at the adders (613 and 615) value modification DX and DY (610 and 611). After setting the specified coordinates on the output Start (674) is a unit, and the machine enters a state LdrawLine (660). After getting on the entrance Finish (647) units, the availability of data in the queue and zero input Estimate (646), the machine enters a state LgetPoint2 (658).

When after state LgetPoint1 (657) machine went into a state of LestimateStart (662), the values of the intermediate registers 2temp (663) and Y2temp (664) correspond to the intermediate registers ltemp (666) and Yltemp(667). Then, without any modification of the initial reference point is intermediate registers ltemp (666) and Yltemp (667) served on the register of coordinates X1 (670), Y1 (671), X2 (673) and Y2 (672). And, issuing the exit Start (674) unit, the machine enters a state LdrawLine (660). From this state, after receiving units on the entrance Finish (647), the availability of data in the queue and the availability of units at the input Estimate (646), the machine enters a state LgetPoint1 (65A Enable (645).

System for visualization of active video (Fig.17) contains a network card 701, designed to produce a digital video stream and sending the command traffic to the server active video, TV receiver 702, used for receiving a digital video stream from the telecentre, the CPU 703, video decoder 704, designed for decoding an input video stream in real time and displayed on the display device audio decoder audio 705 designed for decoding the input digital audio data stream and output it to an external audio device 706 for decoding the encoded visual object made in accordance with Fig.11, designed to contour the visual object in accordance with Fig.11, designed to contour the visual object on the test points and labeling of cells within the outline of the visual object, the device 707 storage designed to store video, audio, active video data and system information, interface 708 user connected to the system bus 709 PCI.

The system is designed for playback of the digital stream of the active video on a TV e the AMI in real time.

The active video stream enters the hardware of the network on the network map 701 or from the broadcaster on TV receiver 702 or from the device 707 storage. The CPU 703 divides the input data stream into three streams: video, audio, and script stream of the active video. The video stream is sent to the Central processor 703 to the video decoder 704, which converts Packed format digital video signal required for playback of video on the display device (Fig.17 not shown, and is connected to the decoder 704 in the usual way). Simultaneously, the CPU 703 forwards the stream to the audio decoder audio 705, which in turn decodes the signal and outputs it to the audio device (Fig.17 is not shown and is connected to the audio decoder 705 in the usual way). In parallel, the CPU 703 transmits the stream of the active video decoding device 706. Device 706 extracts the data and creates card, present on the frame. In the case of interactive changes to the user during playback of script active video through an interface 708 user, the CPU 703 refers to the object sends a request to the network or processes it locally thereby altering the input stream of the active video.

To the system (Fig.17) active video may be by known means connected device view and/or telecommunication network, the Internet, and/or device receiving the digital signal from the satellite, and/or broadcasting and/or cable broadcast center.

Most successfully claimed a method of coding moving coordinate on the screen of the computing device, a video device for decoding a visual object, encoded in this way and the system is intended for visualization of active video using this device, capable of industrial application in computer systems active video (AV) or Hyper Video (HV), as well as in areas such as interactive TV, video on demand, broadcast TV over the Internet, interactive training systems, videopresence, personal, mobile communications, computer and television games.

Claims

1. The encoding method coordinate moving on the screen of the computing device, the video image including the display of the video image of at least one visual object category is x the elementary form of squares or rectangles, select cells whose location matches and does not match the video frame with the location of visual objects by marking cells, coincident with the location of the cells of the visual object, the corresponding symbol and by marking another symbol of cells, the location of which does not coincide with the location of the cells of the visual object, the intra-frame coding, in which form of data map for a visual object of a given video frame, and if the position of the visual object in the next frame time, forming a new map for these frames retain the data array of the visual object of the previous frame, and if the position of the visual object in the next frame is changed, then forming a new map, for such videodrom change the data array of visual object formation and memorization file formed by the sequence of cards in which each card corresponds to at least one video file, wherein the intra-frame coding is carried out by selection of characteristic cells, coinciding with the contour of the visual object and in which the contour of the visual object experiences a change in shape of byetta between the control points are approximated, introduce a local coordinate system X' and Y', which is characterized by a smaller number of cells than the coordinate system X and Y, and the center of one of the cells is taken for the origin of the coordinate system X' and Y' axes which are parallel to the axes X and Y, when intra-frame coding form in the map data array of control points in the local coordinate system X' and Y', which remember, and if the position of the visual object in the next frame time, forming a new map for these frames retain the data array of the control points of the previous frame in the local coordinate system X' and Y', when changing the geometric shape and/or position of the visual object in the next frame to produce interframe coding, wherein if the position of the cells of the visual object in the next frame in the local coordinate system X' and Y' is changed, and its path is stored in the array map data of the next frame enter the parameters of the displacement vector for all control points of the visual object, if changes in the local coordinate system X' and Y' its contour, the produce mentioned intraframe encoding of the video frame, receiving data array control cachetime coordinates X' and Y'.

2. The method according to p. 1, characterized in that in the local coordinate system X' and Y' visual object geometrically constrain the rectangle, which consists of the same cells as in the system of coordinates X and Y, the visual object is inscribed in the rectangle, the center of origin of the coordinates X' and Y' are placed in the center of the corner cells of the rectangle and the direction of the axes coincides with the direction of the coordinate system X and y

3. The method according to p. 1, characterized in that the at approximation using piecewise linear approximation.

4. The method according to p. 1, characterized in that the at approximation using Bezier curves.

5. The method according to p. 1, characterized in that the at approximation using cubic splines.

6. The method according to p. 1, characterized in that when intra-frame coding selection characteristic of the cells of the visual object is produced by means of manual markup.

7. The method according to p. 1, characterized in that when intra-frame coding selection characteristic of the cells of the visual object produced by guidance by means of manually marking multiple of the characteristic of the cells on the path of the visual object with the automatic determination of the control points of these characteristic the point.

8. The method according to p. 1, characterized in that during interframe coding calculate the offsets array of control points for the subsequent video frame code length offset axis X' and Y' and as a data array interframe coding using a code displacement along the axis X' and Y'.

9. The method according to p. 8, characterized in that the data array interframe coding is subjected to compression by introducing into the data array information only about the displaced control points of code shift.

10. The method according to p. 9, characterized in that the data array interframe coding is subjected to compression using binary vector.

11. The method according to p. 10, characterized in that after compression using binary vector to produce an analysis of the displacements of the control points moving in the same direction at the same distance, United by such control points in the group of consecutive control points, and these groups code indicating the number of control points and code their total displacement.

12. The method according to p. 9, characterized in that the data array interframe coding is subjected to compression using a linked list.

13. The method according to p. 12, characterized in that after compression using the W hat is the distance combine these control points in the group of consecutive control points, and these groups code indicating the number of control points and code their total displacement.

14. The method according to p. 1, characterized in that each frame of video for a visual compare the data array intraframe encoding and interframe encoding, and if the data array intraframe coding is smaller than the data array interframe coding, the data array of the control points intraframe coding memorize the map of the video frame and it is used for forming a data array interframe encoding the next frame.

15. The device for decoding encoded visual object containing the units: core bus controller PC1, the core controller direct memory access, base address register, the status register, the register of the command block that provides access to the memory from the controller PC1, the block for building a visual object on the test points, in which the contour of the visual object experiences a change in shape, the unit control block for the loop visual object block to fill the area inside the contour visual about the availability of data, the trigger ready signal data registers, and the inputs/outputs of the mentioned units are connected by a tire through a common connection for the specified block, and the block for building a visual object has been designed to contour the visual object on the test points and made capable of receiving the coordinates of control points from the PC1 bus, the approximation of the contour of the visual object and passing an array of data about all the points on the path to the bus ZBT, the block to fill the area inside the contour of the visual object is used for the marking of cells within the outline of the visual object and configured to receive from the bus ZBT array data of all pixels of the screen, the selection of the contour points of the visual object and the points located inside the contour of the visual object, and passing an array of data about all the points located inside the contour of the visual object on the bus ZBT, the unit control block for the loop visual object designed to support the order of coordinates of control points when applying them in a block for building a visual object.

16. System for visualization of active video containing network card designed oznaczony for receiving a digital video stream from the telecentre, the Central processor, video decoder designed to decode an input video stream in real time and displayed on the display device audio decoder audio intended for decoding the input digital audio data stream and output it to the external system audio playback device for decoding encoded visual object on p. 15, designed to contour the visual object on the test points and labeling of cells within the outline of the visual object, the storage device intended for storage of video, audio, active video data and system information, user interface connected to the system bus PCI.

 

Same patents:

The invention relates to computer technology and can be used in computer systems active video

The invention relates to computer technology and can be used in computer systems active video

The invention relates to computer technology and is designed for interactive processing of video data

The invention relates to information processing and can be used when processing image data

The invention relates to automatic control and computer engineering

The invention relates to computer technology and can be used for playback of artificial intelligence

The invention relates to an imaging device that functions continuously and includes controls for its internal image processing

The invention relates to optoelectronic neural modules neural network for computing structures and is intended for use as operating elements at the Neurocomputers

The invention relates to devices used in medicine

FIELD: aircraft instrumentation engineering; manned flying vehicle information representation systems.

SUBSTANCE: proposed device is provided with computer module, memory module and graphical module and is designed for dynamic forming of sequence of cartographic mimic frames and their animation demonstration on displays of onboard multi-functional indicators. Device employs cartographic data kept in memory and present flight data. Actual navigational information pertaining to present moment may be obtained by personnel in graphical form at high level of clearness and readability, which is achieved due to realization of definite modes and conditions of flight and conditions of several modes of flight of synthesis of cartographic mimic frames which differ in criterion of selected representations, methods of representation, cartographic projections and rules of positioning, orientation and scaling-up of cartographic representations. Mode of synthesis of cartographic mimic frames is selected automatically according to results of identification of present stage, mode and conditions of flight or at the discretion of personnel.

EFFECT: possibility of keeping the personnel informed on flight conditions at all phases of flight.

5 cl, 2 dwg

FIELD: computer science.

SUBSTANCE: method includes performing a block of operations along N1 channels, where N1 is selected from 1 to 2256, wherein received information is separated on logically finished fragments, encoded on basis of preset algorithm, to produce a block of N-dimensional sets adequate for converted source information Aj with elements like {Bm, X1, X2,...,Xn}, where j - order number of set in range from 1 to 2256, Bm - identifier, X1-Xn - coordinate of element from its coordinates center, m and n are selected from 1 to 2256; received block of sets is compared to already accumulated and/or newly produced sets from multiple channels, intersecting portions of sets are found and cut out; after that cut intersections and sets remaining after cutting are distributed among databases, placing each same set into database appropriate for it and each of sets different with some parameter to databases appropriate for them and identifiers of databases storing these sets are substituted in place of cut sets.

EFFECT: higher speed of operation, higher precision, lower costs, broader functional capabilities, higher efficiency.

9 dwg

FIELD: computer science, namely, engineering of devices for producing images, specifically meant for photogrammetry.

SUBSTANCE: photogrammetric workplace contains standard personal computer in base configuration, consisting of system block, monitor, keyboard, mouse-type graphical information manipulator and printer, and stereoscopic video control device, consisting of color monitor, coordinate joystick, parallax joystick, light-valve goggles and monitor adapter, first inputs-outputs of which are connected to system block of personal computer, first output - to input of color monitor, and second output - to input of light-valve goggles.

EFFECT: expanded functional capabilities, decreased dimensions, increased reliability of photogrammetric workplace.

3 dwg, 1 tbl

FIELD: computer engineering; two-dimensional and three-dimensional images processing problem.

SUBSTANCE: device consists of processor matrix, control unit, rotation junction, pressure junction, memory junction matrixes, commutation unit, volume detection junction, and code former. Additional informational input is introduced in the device in every matrix processor local memory input commutator, memory junction matrix, additional pressure junction inputs, connected with processor matrix outputs, additional control unit outputs, connected with additional commutation unit inputs. For each k-th matrix control signal matrix collection of elements is divided into non-overlapping subsets; for each subset first cascade amplifier is introduced. The whole set of m-th cascade amplifiers is divided into non-overlapping subsets; for each m-th cascade amplifiers, excluding the last one, an m+1 cascade amplifier is introduced, output of which is connected with input of every amplifiers of m-th cascade; last cascade amplifiers inputs are connected with corresponding outputs of control unit.

EFFECT: increased speed and accuracy of two-dimensional and three-dimensional images processing.

56 dwg, 2 tbl

FIELD: computer engineering, in particular, technology for correcting distortions, introduced into image by optical-electronic device (video camera, photo-camera, projection display, etc) and following input of corrected image into computer.

SUBSTANCE: known device, contains analog-digital converter, features control circuit, video data RAM, address generator, abscissa correction table RAM, ordinate correction table RAM, correcting address generator, bus controller.

EFFECT: increased precision of input of image into computer and expanded area of possible use of device by providing for operation of device with any image sources.

1 dwg

FIELD: steganography, in particular, methods for detecting additional information in graphic images in JPEG format, having various degrees of significance in form of a digital watermark.

SUBSTANCE: invention allows detection of digital watermark size and coordinates of modified discontinuous cosine transformation coefficients of JPEG format file with required error probability. Along perimeter of each image block, correlation coefficient relative to adjacent blocks are determined for all image blocks, analyzed block after forced modification - incrementing by one in accordance to complete enumeration method of one or several absolute values of discontinuous cosine transformation coefficients (not equal to 0 and 1) - and reverse discontinuous cosine transformation is restored in spatial area. Along perimeter of restored block, values of coefficients of correlation with adjacent blocks are calculated. Minimum of distance is determined - minimum of average square deviation between values of correlation coefficients of restored image block, restored fragment from a corresponding set of discontinuous cosine transformation coefficients is the most correlated with adjacent fragments, and its restored discontinuous cosine transformation coefficients characterize the digital watermark.

EFFECT: increased efficiency.

3 dwg

FIELD: devices for processing graphic data.

SUBSTANCE: in accordance to the invention, by means of communication protocols and/or applied programming interface, making information exchange possible, request is transferred from video data visualization means to graphic device driver, concerning image processing operations, which the driver of graphic device may provide to video data visualization means, response to request indicates at least one image processing operation, which may be provided to video data visualization means by graphic device driver. Image processing operations include operations for adjustment of control by generating amplifier, removal of interlacement, corrections of image format, transformations of color space, transformations of frame frequency, vertical or horizontal mirror imaging and alpha-mixing.

EFFECT: possible interaction between visualization means for video data and drivers of graphical hardware.

16 cl, 7 dwg

FIELD: methods for automatic decision making in informational and controlling systems of robot-engineering complexes, in particular, technical vision systems and television systems for detecting, tracking and recognizing objects, may also be used in automated systems for controlling situation of various purposes.

SUBSTANCE: image recognition method additionally includes operation for detecting local extremes, while a priori unknown structure of image being recognized, presence and location of its component objects, are determined not by using preliminarily given object standard, but on basis of analysis of characteristics of a set of local extremes detected on image signal being analyzed.

EFFECT: expanded area of application of recognizing informational machines to include cases of a priori indeterminacy of characteristics of objects being analyzed and conditions of observation of those objects.

9 dwg

FIELD: visualization of pixel data files, in particular, methods for processing pixel data files before use in application which is not informed about alpha-channel.

SUBSTANCE: in accordance to the invention, a visualizing application, which is not informed about alpha-channel, is used in environment, which is informed about alpha-channel. The pixel data file which is supposed to be recorded by means of the application which is not informed about alpha-channel, is initialized by setting the alpha value for each pixel to 1. The application, which is informed about alpha-channel, then performs recording of initialized pixel data file, changing some or all pixel data. The alpha value for each pixel is then reduced by 1 (modulus 256), making changed pixels non-transparent and making unchanged pixels transparent.

EFFECT: reduced processing time and reduced probability of error during reproduction of graphic images.

8 cl, 5 dwg

FIELD: technological processes.

SUBSTANCE: invention is related to graphic engines. Technical result is achieved because graphic conveyor includes multitude of sequentially located processing stages, where imaging pixels data is visualized from input data of elementary objects. Processing stages include at least texturing stage and depth testing stage, and depth testing stage may be located earlier in the graphic conveyor than the texturing stage.

EFFECT: reduces consumed carrying capacity and power.

16 cl, 5 dwg

FIELD: physics, computation equipment.

SUBSTANCE: the invention claims method of image blur compensation involving: calculation of difference between measured image pixel brightness and brightness assessment obtained earlier on the basis of previous frame sequence; movement detection by comparison of obtained difference to threshold value; defining of movement direction for each pixel; combination of adjoining pixels with the same movement direction in a single object; outlining contours of moving objects by adding their initial B(k) and gradient ▿(B(k)) of images; and generation of output image where k1, k2 are weight factors. Device of image blur compensation includes: image sensor, controller, mode movement detection module, object detection module, correction module, first RAM device, second RAM device, third RAM device, counter, first comparator, second comparator, first multiplexor, second multiplexor, third multiplexor, fourth multiplexor, fifth multiplexor, sixth multiplexor, seventh multiplexor, first demultiplexor, second demultiplexor.

EFFECT: blur compensation for moving object image in real-time mode.

2 cl, 11 dwg

Up!