The invention relates to an image data processing and apparatus, particularly to the apparatus and method by which digital image scrolling can be detected and the digital image can be scaled up or scaled down according to the scrolling direction.
To enlarge or shrinkage an digital image (hereinafter called image), in conventional image process, it is found to be implemented by means of fixed point deleting, copy or interpolating method. However, if the image presentation on the display is scrolling and the image process is still conducted by the fixed point process, then it would cause the user have the eyesore and/or visual ability decay problems due to stare the screen but with a flicking image.
In using computer, scrolling the screen up or down is frequently used. On the other hand, to approach the effect of screen scrolling, it is not necessary to move the picture but by moving a visual field down which is corresponded to the display range so that it is as if the picture is scrolling up while viewing by the observer, as is seen in
If it is desired to enlarge the picture while it is scrolling, a further step is to add some points in the visual field in accordance with the look-up table. Referring to
In other words, to scaling up or down a scrolling image by conventional method is to generate a look-up table according to the received ratio signal and then dividing the visual field into a plurality of segments. In each segment, the sub-s their contents then base on the look-up table to perform sub-segment deleting or adding corresponded. The sub-segment deleting or adding is by a way of fixed points and the way does not change even the visual field is moving.
As aforementioned description, the sub-segment deleting or adding by a way of fixed point, will cause the image being flicking while scrolling the screen.
An image data processing apparatus for detecting a scrolling direction of a first image thereto scales the first image simultaneously is disclosed. The image data processing apparatus includes an image detecting module and a scaling module. The image detecting module is used for extracting an eigenvalue of the first image and its scrolling detection thereto outputs a directional signal and a line difference signal. The scaling module receives a ratio signal, the directional signal, and the line difference signal thereto outputs a second image accordingly.
A method of image data processing is also disclosed. The method includes following steps of extracting an eigenvalue of the first image and its scrolling detection thereto outputs a directional signal and a line difference signal; receiving a ratio signal, generating a look-up table according the ratio signal received; outputting a second image according to the first image, the directional signal, the line difference signal and the look-up table.
Preferably, the look-up table generated based on the ratio signal having a starting reference point. The starting reference point varies with the time when the image is scrolling. The directional signal, and the line difference signal will change the starting reference point so that the image quality is significantly improve during image scaling and scrolling.
The advantages and features of the present invention will be better understood with the aid of the following detailed descriptions and illustrative figures.
The foregoing aspects and many of the attendant advantages of this invention will become more readily appreciated as the same becomes better understood by reference to the following detailed description, when taken in conjunction with the accompanying drawings, wherein:
a)-(c) are a series of schematic diagrams showing a screen scrolling in accordance with the prior art.
a)-2(b) are a series of schematic diagrams showing an image being scrolled and scaled down simultaneously in accordance with the prior art.
a)-3(b) are a series of schematic diagram showing an image being scrolled and scaled up simultaneously in accordance with the prior art.
a)-8(d) are schematic diagrams illustrating a series processes of scaling an image down in accordance with a preferred embodiment of the present invention.
a)-10(d) are schematic diagrams illustrating a series of processes of scaling an image up in accordance with a preferred embodiment of the present invention.
a) and (b) are schematic diagrams illustrating a look-up table generating processes based on a ratio signal in accordance with another preferred embodiment of the present invention.
a)-14(d) are schematic diagrams illustrating a series of processes of scaling an image down in accordance with another preferred embodiment of the present invention.
a-16(d) are schematic diagrams illustrating a series of processes of scaling an image up in accordance with another preferred embodiment of the present invention.
The present invention is to provide an image data processing apparatus. By detecting the scrolling direction scaled image up or down. The image data processing apparatus includes an image detecting module, and a scaling module. The image detecting module extracting an eigenvalue of the first image and the scrolling direction thereof along. Thereafter a directional signal and a row difference signal are outputted. The scaling module then scaling the first image according to the directional signal, the row difference signal, and the received ratio signal to output a second image.
Please refer to
Step S20: detecting the image scrolling direction;
Step S22: outputting a directional signal and a moving downward or upward distance (hereinafter called row difference) signal;
Step S24: generating a look-up table in accordance with a received ratio signal; and
Step S26: scaling the first image according to the directional signal, the row difference signal, and the look-up table.
The step S20 is composed a plurality of steps, as is shown in
Step S202: fetching a starting address of a visual field;
Step S204: generating a first eigensignal according to the starting address;
Step S206: storing a first eigenvalue of the first eigensignal;
Step S208 fetching the starting address post the visual field is moved and generating a second eigensignal;
Step S210: generating a decision signal according to the first eigensignal and the second eigensignal;
Step S212: substituting the second eigenvalue for the first eigenvalue; and
Step S214: waiting for the visual field moving. If the visual field is moved, the step S214 then goes to step S208, otherwise, the step S214 is hold.
The step S24 is composed a plurality of steps, as is shown in
S2402: obtaining an arithmetic progression. The common difference is the reciprocal value of a scaling ratio and the first term is 0.
S2404: obtaining a positive integral arithmetic progression, which is generated by integrating by omitting decimal fractions smaller than 0.5 and counting all others, including 0,5, as 1;
S2406: filling a series of binary codes which are at least one bit each into the corresponding subfields according to the positive integral arithmetic progression.
The forgoing positive integral arithmetic progression generating step S2404 of is an exemplary only but not intended to limit the claim scope. For example, each term in the positive integral arithmetic progression may also be generated by unconditional round off the decimal fraction or taking its Gauss arithmetic of each terms of the original the arithmetic progression.
Another example is by taking the ratio signal 7/6. The total terms is 7, and the results of the arithmetic progression are 0, 6/7, 12/7, 18/7, 24/7, 30/7 and 36/7. After omitting decimal fractions smaller than 0.5 and counting all others, including 0.5, as 1, the terms of the positive arithmetic progression are 0, 1, 2, 3, 3, 4, and 5. Then a look-up table which have field number corresponding to the digit and each field is filled in a binary code according to how many times the digit is presented is generated. Accordingly, the 0th field to 6th field are: 01, 01, 01, 10, 01, and 01, as is shown in
Please refer to
At the next time, the image detecting module will detect scrolling direction, e.g., the moving direction of the visual field and figure out a row difference. For instance, the image detecting module detected out the image is upward i.e., the visual field downward by two rows, therefore, the starting reference coordinate 1000 of the look-up table 70 is downward by two units, as shown in
In other words, the look-up table 70 is varied with time. Return to above example, the image detecting module detected out the image is upward scrolling i.e., the visual field downward scrolling by two rows.
Please refer to
At the next time, the image detecting module detects scrolling direction, e.g., the moving direction of the visual field and figure out a row difference. For instance, the image detecting module detected out the image is upward i.e., the visual field 2002 downward by two rows, therefore, the starting reference coordinate 1000 of the look-up table 80 is downward by two units, as shown in
In other words, the look-up table 80 is varied with time. Return to above example, the image detecting module detected out the image is upward scrolling i.e., the visual field downward scrolling by two rows.
According to anther embodiment of the present invention, the step S24 shown in
S2412: obtaining an arithmetic progression, which has a common difference obtained by taking the reciprocal value of a scaling ratio and the first term is 0;
S2414: converting each term into a mixed fraction whose proper fraction is served as a weighting ratio and integer portion thereof is corresponded to a sub-field;
S2416: filling those weighting ratios, the proper fraction corresponded, into subfields, which are one to one corresponding to its integer portion. The subfields will be kept as null if none integer portion is corresponded.
According to a preferred embodiment of the present invention, a received scaling ratio signal 3/7 is taken as an example. A series of processes for generating a look-up table are shown in
Converting them into mixed fractions, the results are: 0
and
According the rule, the integer portions 0, 2, and 4 will correspond to the 0th, 2nd, and 4th subfields having contents, respectively, 0, ⅓, and ⅔. The remaining subfields will be kept as empty and designated them with “null”, as is shown in
and
According the rule, the integer portions includes 0, 1, and 2 will correspond to the 0th, 1st and 2nd field. Each field has three subfields with contents, 0, 3/7, 6/7, respectively, for the 0th field, 2/7, 5/7, null, respectively, for the 1st field, and 1/7, 4/7, null, respectively, for the 2nd field.
Please refer to
The way of generating the sub-segments 92b, 94b, and 96b in the
The sub-segments 92b is a combination of picture quality of the sub-segments 92a×(1−0/3) with picture quality of the sub-segments 93a×0/3.
The sub-segments 94b is a combination of picture quality of the sub-segments 94a×(1−1/3) with picture quality of the sub-segments 95a×1/3.
The sub-segments 96b is a combination of picture quality of the sub-segments 96a×(1−2/3) with picture quality of the sub-segments 97×2/3.
Surely, the scaled image contains many segments and each is implemented according to the others fields of the look-up table as above.
At the next time, the image detecting module will detect scrolling direction, e.g., the moving direction of the visual field and figure out a row difference. For instance, the image detecting module detected out the image is downward i.e., the visual field upward by two rows, therefore, the starting reference coordinate 3000 of the look-up table 90 is upward by two units, as shown in
The way of generating the sub-segments 94b′, 96b′, and 98b in the
The sub-segments 94b′ is a combination of picture quality of the sub-segments 92a′×(1−0/3) with picture quality of the sub-segments 93a′×0/3.
The sub-segments 96b′ is a combination of picture quality of the sub-segments 96a′×(1−1/3) with picture quality of the sub-segments 97a′×1/3.
The sub-segments 98b′ is a combination of picture quality of the sub-segments 98a′×(1−2/3) with picture quality of the sub-segments 99a′×2/3.
Surely, the scaled image contains many segments and each is implemented according to the others fields of the look-up table as above. Viewing from visual field is concerned, the combined sub-segment 92b in the previous state shown in
In other words, the look-up table 90 is varied with time. Return to above example, the image detecting module detected out the image is downward scrolling i.e., the visual field upward scrolling by two rows.
Please refer to
The way of generating the sub-segments 1021b, 1022b, 1023b, 1031b, 1032b, 1041b, and 1042b in the
The sub-segments 1021b is a combination of picture quality of the sub-segments 102a×(1−0/7) with picture quality of the sub-segments 103a×0/7.
The sub-segments 1022b is a combination of picture quality of the sub-segments 102a×(1−3/7) with picture quality of the sub-segments 103a×3/7.
The sub-segments 1023b is a combination of picture quality of the sub-segments 102a×(1−6/7) with picture quality of the sub-segments 103a×6/7.
The sub-segments 1031b is a combination of picture quality of the sub-segments 103a×(1−2/7) with picture quality of the sub-segments 104a×2/7.
The sub-segments 1032b is a combination of picture quality of the sub-segments 103a×(1−5/7) with picture quality of the sub-segments 104a×5/7.
The sub-segments 1041b is a combination of picture quality of the sub-segments 104a×(1−1/7) with picture quality of the sub-segments 105a×1/7.
The sub-segments 1042b is a combination of picture quality of the sub-segments 104a×(1−4/7) with picture quality of the sub-segments 105a×4/7.
Surely, the scaled image contains many segments and each is implemented according to the others fields of the look-up table as above.
At the next time, the image detecting module detects scrolling direction, e.g., the moving direction of the visual field and figure out a line difference. For instance, the image detecting module detected out the image is downward i.e., the visual field upward by two rows, therefore, the starting reference coordinate 4000 of the look-up table 90 is upward by two units, as shown in
The sub-segments 102a′, 103a′, and 104a′ corresponding to subfields 102′, 103′, and 104′ in the look-up table 100. The way of generating the sub-segments 1021b′, 1022b′, 1031b′, 1032b′, 1041b′, 1042b′, and 1043b′ in the
The sub-segments 1021b′ is a combination of picture quality of the sub-segments 102a′×(1−2/7) with picture quality of the sub-segments 103a′×2/7.
The sub-segments 1022b′ is a combination of picture quality of the sub-segments 102a′×(1−5/7) with picture quality of the sub-segments 103a′×5/7.
The sub-segments 1031b′ is a combination of picture quality of the sub-segments 103a′×(1−1/7) with picture quality of the sub-segments 104a′×1/7.
The sub-segments 1032b′ is a combination of picture quality of the sub-segments 103a′×(1−4/7) with picture quality of the sub-segments 104a′×4/7.
The sub-segments 1041b′ is a combination of picture quality of the sub-segments 104a′×(1−0/7) with picture quality of the sub-segments 105a′×0/7.
The sub-segments 1042b′ is a combination of picture quality of the sub-segments 104a′×(1−3/7) with picture quality of the sub-segments 105a′×3/7.
The sub-segments 1043b′ is a combination of picture quality of the sub-segments 104a′×(1−6/7) with picture quality of the sub-segments 105a′×6/7.
Surely, the scaled image contains many segments and each is implemented according to the others fields of the look-up table as above. Viewing from visual field is concerned, the combined sub-segment 1022b in the previous state shown in
In other words, the look-up table 100 is varied with time. Return to above example, the image detecting module detected out the image is downward scrolling i.e., the visual field upward scrolling by two rows.
Please refer to
Turning to
The fetching module 302-1 is provided to fetch a starting address (SA) of a visual field and obtain a line number according to the SA. According to the line number, the fetching module 302-1 outputs a first eigensignal 302-3 to the storage unit 302-2-1, then stores a first eigenvalue according to first eigensignal 302-3. After the visual field is moved, the fetching module 302-1 fetches a starting address (SA) of a visual field again and outputs a second eigensignal 302-4 to the calculating unit 302-2-2 by the same way. The calculating unit 302-2-2 generates a second eigenvalue and then uses it to subtract the first eigenvalue so as to obtains an eigenvalue difference and a absolute value of the eigenvalue difference. Thereafter, the second eigenvalue is stored into storage unit 302-2-1 for reference.
While the visual field is moved again, the fetching module 302-1 fetches its starting address (SA) of a visual field again and outputs a third eigensignal 302-4 to the calculating unit 302-2-2 by the same way. The calculating unit 302-2-2 generates a third eigenvalue and then uses it to subtract the second eigenvalue so as to obtains an eigenvalue difference and a absolute value of the eigenvalue difference. Thereafter, the third eigenvalue is stored into storage unit 302-2-1.
The aforementioned eigenvalue difference and absolute value of the eigenvalue difference obtaining are repeatedly if the visual field is moved. The eigenvalue difference is obtained always by current eigenvalue substracts the previous eigenvalue. Accordingly the scolling direction of the visual field is derived.
On the other hand, the judge unit 302-2-3 generates a decision signal 302-7 according to the eigenvalue difference 302-5 and an absolute value 302-6 of the eigenvalue difference. If the eigenvalue difference 302-5 is larger than zero and if the absolute value of the eigenvalue difference is smaller than an altitude of previous visual field, then a scrolling up decision signal is generated. If the eigenvalue difference 302-5 is smaller than zero and if the absolute value of the eigenvalue difference is smaller than an altitude of current visual field i.e., post the visual field is scrolled, and then a scrolling down decision signal is generated. The decision signal 302-7 includes how many lines will be scrolled.
Referring to
Comparing to the prior art, the image scrolling and scaling apparatus and the method provided by the present invention can overcome the image flicking problem during the screen scrolling and scaling. Furthermore, the variation of the image is smooth during scrolling and scaling. This is because the method utilize the way by changing the reference starting position of the look-up table according to scale the corresponding segments. Using the same look-up table, perform the combination repeatedly on consecutive sub-segments of digital image source 60, the resulted output digital image 61 is the digital image 60 is scaled by 7/3 in vertical direction thereof. Since each sub-segment in the output is the combination obtained from the neighboring sub-segments, no roughness or discontinuities are observed in the output image during image scaling up.
While the preferred embodiments of the invention have been described above, it will be recognized and understood that various modifications can be made in the invention and the appended claims are intended to cover all such modifications which may fall within the spirit and scope of the invention.
Number | Date | Country | Kind |
---|---|---|---|
94103852 A | Feb 2005 | TW | national |
Number | Name | Date | Kind |
---|---|---|---|
5208872 | Fisher | May 1993 | A |
5434591 | Goto et al. | Jul 1995 | A |
5634021 | Rosenberg et al. | May 1997 | A |
5872872 | Kajiwara | Feb 1999 | A |
6035073 | Kaup | Mar 2000 | A |
6993174 | Fan et al. | Jan 2006 | B2 |
Number | Date | Country |
---|---|---|
2002-286467 | Oct 2002 | JP |
Number | Date | Country | |
---|---|---|---|
20060176495 A1 | Aug 2006 | US |