fill_interlace__ ( ImageCamera : ImageFilled : OddEven : )

Interpolate 2 video half images.

The operator fill_interlace__ calculates an interpolated full image from a video image composed of two half images. If an image is recorded with a video camera it consists of two half images recorded at different times but stored in one image in the digital form. This can lead to grave errors in further processing. In order to reduce these errors the video image is modified. Every second line is re-calculated. The parameter OddEven determines whether this must be done for even or odd line numbers. The gray values in the generated lines are calculated as mean values from the direct neighbor above or below the current pixel, respectively.


Parameters

ImageCamera (input_object)
image(-array) -> object : byte
Gray image consisting of two half images.

ImageFilled (output_object)
image(-array) -> object : byte
Full image with interpolated lines.

OddEven (input_control)
string -> string
Instruction whether even or odd lines should be replaced.
Default value: 'odd'
List of values: 'odd', 'even'


Example
read_image(Image:'video_bild'::) >
fill_interlace__(Image:New:'odd':) >
sobel_amp(New:Sobel:'sum_abs',3).

Complexity

For each pixel: O(2).


Result

If the parameter values are correct the operator fill_interlace__ returns the value TRUE. The behavior in case of empty input (no input images available) is set via the operator set_system(::'no_object_result',<Resultat>:). If necessary an exception is raised.


Possible Predecessors

read_image, grab_image


Possible Successors

sobel_amp, edges__, regiongrowing__, diff_of_gauss__, threshold__, dyn_threshold__, auto_threshold2, mean__, gauss__, anisotrope_diff__, sigma__, median


See also

median, gauss__, crop_image



Copyright © 1996-1997 MVTec Software GmbH