CN113014991A - Method and device for video rotation and computer readable medium - Google Patents
Method and device for video rotation and computer readable medium Download PDFInfo
- Publication number
- CN113014991A CN113014991A CN202110235112.5A CN202110235112A CN113014991A CN 113014991 A CN113014991 A CN 113014991A CN 202110235112 A CN202110235112 A CN 202110235112A CN 113014991 A CN113014991 A CN 113014991A
- Authority
- CN
- China
- Prior art keywords
- image
- theta
- pixel
- pixels
- cos
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000004364 calculation method Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 5
- 238000004422 calculation algorithm Methods 0.000 claims description 4
- 238000013507 mapping Methods 0.000 description 21
- 238000009825 accumulation Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/485—End-user interface for client configuration
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Controls And Circuits For Display Device (AREA)
- Image Processing (AREA)
Abstract
The present disclosure provides a method of video rotation, the method comprising: acquiring an original image of one frame of a video and a rotation angle theta thereof; according to the theta, determining sin theta and cos theta, and determining the coordinate of a calibration pixel in the first image in the second image; determining coordinates of other pixels in the first image in the second image by accumulating sin theta and cos theta on the coordinates of the calibration pixel in the second image; one of the first image and the second image is an original image, and the other image is an output image obtained by rotating the original image by theta; the pixels in the original image and the pixels in the output image are all arranged in a plurality of rows and columns which are mutually vertical, the coordinates comprise an abscissa along the row direction and an ordinate along the column direction, and the size of each pixel in the abscissa and the ordinate is 1. The disclosure also provides a method and a device for video rotation and a computer readable medium.
Description
Technical Field
The present disclosure relates to the field of video rotation technologies, and in particular, to a method and an apparatus for video rotation, and a computer readable medium.
Background
In many cases, it is necessary to rotate the video and display the video by rotating the video by a certain angle. The essence of video rotation is to determine the mapping relationship between each pixel in the original image (the original image in the input video) of each frame and each pixel in the output image (the image that is the basis for the actual display).
The above mapping can be divided into a forward mapping and a backward mapping. The forward mapping is to determine the position of each pixel in the original image in the output image, and further determine the corresponding pixel of each pixel of the original image in the output image; the backward mapping is to determine the position of each pixel in the output image in the original image, and further to determine the corresponding pixel of each pixel in the output image in the original image.
It can be seen that the essence of the above mapping is to calculate the position of a point in the image after the image has been rotated, e.g. for a coordinate (X) in an image, as known from geometrical relationsa,Ya) Point A of (2), the coordinates (X ') of the image after counterclockwise rotation by an angle of θ'a,Y’a) The following formula should be satisfied:
X‘a=Xa*cosθ-Ya*sinθ;
Y‘a=Xa*sinθ+Ya*cosθ。
it can be seen that if the position of each pixel in the output video of the original video is determined according to the above formula, 4 multiplications (for example, implemented by 4 multipliers) are required for each pixel, but the use of a large number of multipliers (multiplications) will reduce the operation dominant frequency of the processing circuit and increase power consumption.
Disclosure of Invention
The present disclosure provides a method and apparatus for video rotation, and a computer readable medium.
In a first aspect, an embodiment of the present disclosure provides a method for video rotation, including:
acquiring an original image of one frame of a video and a rotation angle theta thereof;
according to the theta, determining sin theta and cos theta, and determining the coordinate of a calibration pixel in the first image in the second image;
determining coordinates of other pixels in the first image in the second image by accumulating sin theta and cos theta on the coordinates of the calibration pixel in the second image;
one of the first image and the second image is an original image, and the other image is an output image obtained by rotating the original image by theta; the pixels in the original image and the pixels in the output image are all arranged in a plurality of rows and columns which are mutually vertical, the coordinates comprise an abscissa along the row direction and an ordinate along the column direction, and the size of each pixel in the abscissa and the ordinate is 1.
In some embodiments, the calibration pixel is a pixel of any corner in the first image.
In some embodiments, the first image is an original image and the second image is an output image; the determining coordinates of other pixels in the first image in the second image comprises: according to a formula X'(i+1,j)=X’(i,j)+cosθ、Y′(i+1,j)=Y’(i,j)+sinθ、X′(i,j+1)=X’(i,j)-sinθ、Y′(i,j+1)=Y’(i,j)+ cos theta calculates the horizontal coordinate and the vertical coordinate of other pixels in the original image in the output image in turn;
or,
the first image is an output image, and the second image is an original image; the determining coordinates of other pixels in the first image in the second image comprises: according to formula X(i+1,j)=X(i,j)+cosθ、Y(i+1,j)=Y(i,j)-sinθ、X(i,j+1)=X(i,j)+sinθ、Y(i,j+1)=Y(i,j)+ cos theta calculates the horizontal coordinate and the vertical coordinate of other pixels in the original image in the output image in turn;
wherein θ is positive in a counterclockwise direction; the positive direction of the abscissa is the same as the positive direction of the ordinate after being rotated counterclockwise by 90 degrees; x'(a,b)Is the abscissa, Y 'of the pixel in the original image along the b-th row and the a-th column in the forward direction in the output image'(a,b)The ordinate of the pixel along the b-th line and the a-th column in the positive direction in the original image in the output image is shown; x(a,b)For the edges in the output imageAbscissa, Y, of pixel in forward row b and column a in the original image(a,b)Is the ordinate of the pixel along the b-th row and a-th column in the output image in the original image.
In some embodiments, said determining sin θ, cos θ comprises:
with 1 as the initial length, sin theta and cos theta are obtained through a cordic algorithm.
In some embodiments, the first image is an original image and the second image is an output image; the determining the coordinates of a calibration pixel in the first image in the second image comprises: with XaFor the initial length, X is obtained by cordic operationa*sinθ、XaCos θ; with YaFor the initial length, Y is obtained by cordic operationa*sinθ、YaCos θ; according to a formula X'a=Xa*cosθ-YaSin theta and Y'a=Xa*sinθ+YaCalculating the horizontal coordinate and the vertical coordinate of the calibration pixel in the output image by cos theta;
or,
the first image is an output image, and the second image is an original image; the determining the coordinates of a calibration pixel in the first image in the second image comprises: by X'aIs an initial length, X 'is obtained by cordic calculation'a*sinθ、X‘aCos θ; from Y'aIs an initial length, and is calculated by cordic to obtain Y'a*sinθ、Y’aCos θ; according to formula Xa=X‘a*cosθ+Y’aSin theta and Ya=-X’a*sinθ+Y‘aCalculating the horizontal coordinate and the vertical coordinate of the calibration pixel in the output image by cos theta;
wherein θ is positive in a counterclockwise direction; the positive direction of the abscissa is the same as the positive direction of the ordinate after being rotated counterclockwise by 90 degrees; xa、YaRespectively represents the abscissa and ordinate, X 'of the calibration pixel in the original image'a、Y‘aRespectively, the abscissa and the ordinate of the calibration pixel in the output image.
In some embodiments, the cordic operation comprises:
setting the current iteration number n to be 0, and determining x (0) and y (0); x (n), y (n) and y (n) are respectively an abscissa and an ordinate of a point P in the nth iteration, x (0) is determined according to a preset initial length and a maximum iteration number m, and y (0) is 0;
the nth iteration is performed: determining the position of a point P after the PO rotates around the point O by an angle of beta (n) as the position of the point P in the (n +1) th iteration, and enabling n to be n + 1; wherein, the point O is the origin,the positive and negative of beta (n) are determined according to the relation between the included angle alpha (n) of the PO relative to the x axis before rotation and theta;
if n is less than m, returning to the step of performing the nth iteration; if n ═ m, x (m), y (m) are the results of the cordic calculation.
In some embodiments, x (n), y (n), α (n), and n are each registered in a register.
In some embodiments, after the determining the coordinates of the other pixels in the first image in the second image, the method further comprises:
and determining an output image according to the original image and the coordinates of all pixels in the first image in the second image.
In a second aspect, an embodiment of the present disclosure provides an apparatus for video rotation, including:
the acquisition module is configured to acquire an original image of one frame of the video and a rotation angle theta thereof;
the first determining module is configured to determine sin theta and cos theta according to theta, and determine the coordinate of a calibration pixel in the first image in the second image;
a second determining module configured to determine coordinates of other pixels in the first image in the second image by accumulating sin θ and cos θ on the coordinates of the calibration pixel in the second image;
one of the first image and the second image is an original image, and the other image is an output image obtained by rotating the original image by theta; the pixels in the original image and the pixels in the output image are all arranged in a plurality of rows and columns which are mutually vertical, the coordinates comprise an abscissa along the row direction and an ordinate along the column direction, and the size of each pixel in the abscissa and the ordinate is 1.
In a third aspect, the present disclosure provides a computer-readable medium, on which a computer program is stored, where the computer program, when executed by a processor, implements any one of the above-mentioned methods for video rotation.
In the embodiment of the disclosure, only the position mapping relationship of one calibration pixel in the original image and the output image is determined, the position mapping relationship of other pixels can be determined in an 'accumulation' mode, and the accumulation operation only uses an adder, so that the use of a multiplier (multiplication) in the video rotation process is avoided, the operation main frequency of a processing circuit can be improved, the processing speed is increased, and the power consumption is reduced.
Drawings
The accompanying drawings are included to provide a further understanding of the disclosure and are incorporated in and constitute a part of this specification, illustrate embodiments of the disclosure and together with the detailed description serve to explain the disclosure and not limit the disclosure. The above and other features and advantages will become more apparent to those skilled in the art by describing in detail embodiments with reference to the attached drawings in which:
fig. 1 is a flowchart of a method for video rotation according to an embodiment of the present disclosure;
FIG. 2 is a schematic diagram of pixel positions in an image in a video rotation method according to an embodiment of the disclosure;
fig. 3 is a flowchart of another video rotation method provided by the embodiment of the present disclosure;
FIG. 4 is a diagram illustrating a hardware configuration for implementing cordic operation in the prior art;
FIG. 5 is a schematic diagram illustrating a logic process of cordic operation in another video rotation method according to an embodiment of the present disclosure;
fig. 6 is a block diagram of a video rotation apparatus according to an embodiment of the present disclosure;
fig. 7 is a block diagram of a computer-readable medium according to an embodiment of the disclosure.
Detailed Description
In order to make those skilled in the art better understand the technical solution of the present disclosure, the method and apparatus for video rotation and the computer readable medium provided in the present disclosure are described in detail below with reference to the accompanying drawings.
The present disclosure will be described more fully hereinafter with reference to the accompanying drawings, but the illustrated embodiments may be embodied in different forms and should not be construed as limited to the embodiments set forth in the disclosure. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
The present disclosure may be described with reference to plan and/or cross-sectional views by way of idealized schematic illustrations of the present disclosure. Accordingly, the example illustrations can be modified in accordance with manufacturing techniques and/or tolerances.
Embodiments of the present disclosure and features of embodiments may be combined with each other without conflict.
The terminology used in the present disclosure is for the purpose of describing particular embodiments only and is not intended to be limiting of the disclosure. As used in this disclosure, the term "and/or" includes any and all combinations of one or more of the associated listed items. As used in this disclosure, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. The terms "comprises," "comprising," "made from … …," as used in this disclosure, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
Unless otherwise defined, all terms (including technical and scientific terms) used in this disclosure have the same meaning as commonly understood by one of ordinary skill in the art. It will be further understood that terms, such as those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and the present disclosure, and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
The present disclosure is not limited to the embodiments shown in the drawings, but includes modifications of configurations formed based on a manufacturing process. Thus, the regions illustrated in the figures have schematic properties, and the shapes of the regions shown in the figures illustrate specific shapes of regions of elements, but are not intended to be limiting.
In a first aspect, referring to fig. 1 to 5, an embodiment of the present disclosure provides a method for video rotation.
In the embodiment of the present disclosure, one of the first image and the second image is an original image, and the other is an output image obtained by rotating the original image by θ.
The first image and the second image are selected from an original image in the original video without repeating, and a rotated output image according to which the first image and the second image are actually displayed. That is, embodiments of the present disclosure may be used for forward mapping (determining the position of pixels of the original image in the output image) as well as for reverse mapping (determining the position of pixels of the output image in the original image).
In the embodiment of the disclosure, the pixels in the original image and the output image are arranged in a plurality of rows and columns which are perpendicular to each other, the coordinates include an abscissa along the row direction and an ordinate along the column direction, and the size of each pixel in the abscissa and the ordinate is 1.
Referring to fig. 2, the images (the original image and the output image) of the embodiment of the present disclosure are each composed of a plurality of pixels arranged in mutually perpendicular rows and columns (matrix), such that each pixel corresponds to a "dot" in the image and has pixel values (e.g., grayscale values of three colors, red, green, and blue) indicating what the dot should display.
The images (original image and output image) of the embodiment of the present disclosure are located in a coordinate system, where the row direction is the direction of the abscissa axis (X axis), the column direction is the direction of the ordinate axis (Y axis), and the size of each pixel in the directions of the abscissa and ordinate is 1, so that the position of each pixel in the image can be represented by the coordinates (abscissa and ordinate), and when the image is rotated, the position corresponds to the position change of the pixel in the coordinate system, that is, the coordinate change.
The origin O of the coordinate system may be located at different positions relative to the image, for example, the origin O may be located at the geometric center of the image with reference to fig. 2, such as the width (i.e., the number of columns of pixels) of the image may be W, and the height (i.e., the number of rows of pixels) of the image may be H.
Referring to fig. 1, a method of video rotation of an embodiment of the present disclosure includes:
s101, acquiring an original image of one frame of the video and a rotation angle theta of the original image.
Acquiring an original image of a frame in a video to be rotated and an angle theta of the original image of the frame to be rotated.
S102, according to theta, sin theta and cos theta are determined, and the coordinate of a calibration pixel in the first image in the second image is determined.
From θ, the sine value sin θ and the cosine value cos θ of θ are obtained.
Then, by using a pixel in the first image as a calibration pixel (of course, the coordinates of the calibration pixel are also determined), the coordinates of the calibration pixel in the second image can be obtained according to θ.
It should be understood that the above processes of calculating sin θ and cos θ, and calculating the coordinates of the calibration pixel in the second image are not necessarily performed in order.
And S103, determining the coordinates of other pixels in the first image in the second image by accumulating sin theta and cos theta on the coordinates of the calibration pixel in the second image.
According to the geometric relationship, the difference between the abscissa and the ordinate of any two adjacent pixels (namely two pixels with 1 difference in the abscissa) in the same row in the image after the image is rotated for a determined angle is still determined, and the difference can be determined according to the sine value and the cosine value of the angle; and after the image is rotated by a determined angle, the difference between the abscissa and the ordinate of any two adjacent pixels (namely two pixels with the difference of 1 between the ordinate) in the same column in the image is also determined, and the difference can be determined according to the sine value and the cosine value of the angle.
Therefore, the coordinates of any pixel in one row of the first image in the second image can be determined by accumulating sin theta and cos theta; if the coordinates of any one pixel in a column of the first image in the second image are determined, the coordinates of all pixels in the column in the second image can be determined by the accumulation of sin θ and cos θ. Therefore, according to the coordinate of a calibration pixel in the first image in the second image, the coordinates of other pixels in the first image in the second image can be determined through continuous accumulation in the row direction and the column direction.
In the embodiment of the disclosure, only the position mapping relationship of one calibration pixel in the original image and the output image is determined, the position mapping relationship of other pixels can be determined in an 'accumulation' mode, and the accumulation operation only uses an adder, so that the use of a multiplier (multiplication) in the video rotation process is avoided, the operation main frequency of a processing circuit can be improved, the processing speed is increased, and the power consumption is reduced.
In some embodiments, the calibration pixel is a pixel of any corner in the first image.
Specifically, a pixel at a certain most corner (upper left corner, lower left corner, upper right corner, and lower right corner) in the first image can be used as a calibration pixel, so that in the accumulation process, the abscissa of all other pixels in the second image can be realized by performing pure addition or subtraction on the abscissa and the ordinate of the calibration pixel in the second image without judging addition or subtraction, and the operation is more convenient.
In some embodiments, as a mode of the disclosed embodiments, the first image is an original image and the second image is an output image.
Determining coordinates of other pixels in the first image in the second image (step S103) includes:
s1031, according to formula X'(i+1,j)=X’(i,j)+cosθ、Y′(i+1,j)=Y’(i,j)+sinθ、X′(i,j+1)=X’(i,j)-sinθ、Y′(i,j+1)=Y’(i,j)The + cos θ sequentially calculates the abscissa and ordinate of each pixel in the original image in the output image.
Wherein theta is in reverse timeThe needle direction is positive; the positive direction of the abscissa is the same as the positive direction of the ordinate after being rotated counterclockwise by 90 degrees; x'(a,b)Is the abscissa, Y 'of the pixel in the original image along the b-th row and the a-th column in the forward direction in the output image'(a,b)Is the ordinate of the pixel along the b-th row and a-th column in the original image in the output image.
Embodiments of the present disclosure may be used for forward mapping, i.e., the first image may be the original image and the second image the output image.
Wherein, the theta value is considered as the angle of counterclockwise rotation of the image; and the row number and column number in the image are arranged according to the positive directions of the abscissa and the ordinate, namely the row number and the column number are respectively increased along the positive directions of the abscissa and the ordinate. For example, referring to FIG. 2, where the bottom left pixel is the first row, first column (first) pixel, its coordinates (abscissa, ordinate) may be specifically (-W/2, -H/2).
At this time, for two adjacent pixels (i-th row pixel, i + 1-th row pixel) located in the same row (j-th row) in the first image (original image), their abscissa X 'in the second image'(i,j)、X′(i+1,j)And ordinate Y'(i,j)、Y′(i+1,j)The following formula (first set of formulas) is satisfied:
X′(i+1,j)=X’(i,j)+cosθ;
Y′(i+1,j)=Y’(i,j)+sinθ。
on the other hand, for two adjacent pixels (pixel of j-th row, pixel of j + 1-th row) in the same column (i-th column) in the first image (original image), their abscissa X 'in the second image'(i,j)、X′(i,j+1)And ordinate Y'(i,j)、Y′(i,j+1)Satisfying the following formula (second set of formulas):
X′(i,j+1)=X’(i,j)-sinθ;
Y′(i,j+1)=Y’(i,j)+cosθ。
thus, the coordinates of all the images in the first image (original image) in the second image can be sequentially accumulated based on the coordinates of the calibration pixels located at the corner in the second image (output image).
For example, when the calibration pixel is the first row, first column (first) pixel in the first image, its coordinate in the second image is (X'(1,1),Y’(1,1)) In this regard, the coordinates (X ') of all pixels in the first line of the first image in the second image may be calculated sequentially according to the above first set of equations'(i,1),Y’(i,1)) Wherein i ═ 1, 2, 3.. W; thus, the coordinates of the first pixel (first row) in all columns of the first image in the second image are known, so the coordinates (X 'of the other pixels in each column of the first image in the second image can be calculated sequentially according to the above second set of equations'(i,j),Y’(i,j)) Wherein i ═ 1, 2, 3.
Of course, the derivation of the pixel coordinates is not necessarily in the above order, for example, the coordinates of all the pixels in the first column of the first image in the second image may be calculated sequentially by the above second set of formulas, and then the coordinates of other pixels in each row of the first image in the second image may be calculated sequentially by the above first set of formulas; and will not be described in detail herein.
In some embodiments, as another mode of the disclosed embodiments, the first image is an output image and the second image is an original image.
Determining coordinates of other pixels in the first image in the second image (step S103) includes:
s1032, according to the formula X(i+1,j)=X(i,j)+cosθ、Y(i+1,j)=Y(i,j)-sinθ、X(i,j+1)=X(i,j)+sinθ、Y(i,j+1)=Y(i,j)+ cos theta calculates the horizontal coordinate and the vertical coordinate of other pixels in the original image in the output image in turn;
wherein θ is positive in the counterclockwise direction: the positive direction of the abscissa is the same as the positive direction of the ordinate after being rotated counterclockwise by 90 degrees; x(a,b)Is the abscissa, Y, of the pixel in the original image along the b-th row and the a-th column in the forward direction(a,b)Is the ordinate of the pixel along the b-th row and a-th column in the output image in the original image.
Embodiments of the present disclosure may also be used for inverse mapping, i.e., the first image may be the output image and the second image the original image.
Wherein, the reverse mapping can also be regarded as the rotation angle is 360 ° - θ, relative to the forward mapping, so the formulas and the like therein can be obtained through geometric changes, and will not be described in detail herein.
It should be understood that the above specifications of the rotation angle direction, the coordinate axis positive direction, etc. are only exemplary, and when they are different in specific specification, the above formula will change, but the change is only an equivalent mathematical transformation, and the same in substance, and thus all are the protection scope of the present disclosure.
In some embodiments, referring to fig. 3, determining sin θ and cos θ (step S102) includes:
and S1021, taking 1 as an initial length, and obtaining sin theta and cos theta through a cordic algorithm.
Because sin theta and cos theta are needed in the accumulation operation, the values of sin theta and cos theta can be calculated by a cordic algorithm.
In some embodiments, referring to fig. 3, as a mode of the embodiments of the present disclosure, the first image is an original image and the second image is an output image. Determining the coordinates of a calibration pixel in the first image in the second image (step S102) comprises:
s1022, with XaFor the initial length, X is obtained by cordic operationa*sinθ、Xa*cosθ。
S1023, with YaFor the initial length, Y is obtained by cordic operationa*sinθ、Ya*cosθ。
S1024, according to a formula X'a=Xa*cosθ-YaSin theta and Y'a=Xa*sinθ+YaAnd calculating the abscissa and the ordinate of the calibration pixel in the output image by cos theta.
Wherein theta is positive in a counterclockwise direction; the positive direction of the abscissa is the same as the positive direction of the ordinate after being rotated counterclockwise by 90 degrees; xa、YaAre respectively provided withIs the abscissa, the ordinate, X 'of the calibration pixel in the original image'a、Y‘aRespectively, the abscissa and the ordinate of the calibration pixel in the output image.
When forward mapping is performed, the coordinate in the original image is (X) according to the geometric relationa,Ya) The calibration pixel (e.g., the pixel of the first row and the first column above), its coordinate (X 'in the output image'a,Y‘a) Can be calculated by the following formula:
X‘a=Xa*cosθ-Ya*sinθ;
Ya=Xa*sinθ+Ya*cosθ。
therefore, X is required to be used in the formulaa*sinθ、Xa*cosθ、Ya*sinθ、YaValues of cos θ, and these values may be in particular X, respectivelyaAnd YaThe initial length is obtained directly through cordic operation.
In this way, all operations of video rotation include only addition and cordic operations, and no multiplication (multiplier) is used at all, thereby further improving the operation speed and reducing the power consumption.
Wherein, the above steps S1022 and S1023 are respectively used for calculation and Xa、YaRelated values, but not necessarily in sequential order.
Of course, if the method is not the above method, X is calculated by multiplication according to sin theta and cos theta obtained in advancea*sinθ、Xa*cosθ、Ya*sinθ、YaValues of cos θ are also possible.
In some embodiments, as a mode of the disclosed embodiments, the first image is an output image and the second image is an original image. Determining the coordinates of a calibration pixel in the first image in the second image (step S102) comprises:
s1025 'S of X'aIs an initial length, X 'is obtained by cordic calculation'a*sinθ、X‘a*cosθ。
S1026, Y'aIn order to be the initial length of the cable,obtaining Y 'by cordic calculation'a*sinθ、Y’a*cosθ。
S1027 according to formula Xa=X‘a*cosθ+Y’aSin theta and Ya=-X’a*sinθ+Y‘aAnd calculating the abscissa and the ordinate of the calibration pixel in the output image by cos theta.
Wherein theta is positive in a counterclockwise direction; the positive direction of the abscissa is the same as the positive direction of the ordinate after being rotated counterclockwise by 90 degrees; xa、YaRespectively represents the abscissa and ordinate, X 'of the calibration pixel in the original image'a、Y‘aRespectively, the abscissa and the ordinate of the calibration pixel in the output image.
The disclosed embodiment can also be used for performing reverse mapping, and the reverse mapping can also be regarded as that the rotation angle is 360 ° - θ compared with the forward mapping, so that the formula and the like therein can be obtained through geometric changes, and are not described in detail herein.
In some embodiments, referring to fig. 5, cordic operations include:
a101, setting the current iteration number n to be 0, and determining x (0) and y (0); x (n), y (n) are respectively the abscissa and ordinate of the point P at the nth iteration, x (0) is determined according to a preset initial length and the maximum iteration number m, and y (0) is 0.
And A102, carrying out nth iteration: and determining the position of a point P after the point PO rotates around the point O by an angle of beta (n) as the position of the point P in the (n +1) th iteration, and enabling n to be n + 1.
Wherein, the point O is the origin,the positive and negative of beta (n) are determined according to the relation between the included angle alpha (n) of the PO before rotation relative to the x axis and theta.
A103, if n is less than m, returning to the step of carrying out nth iteration; if n ═ m, x (m), y (m) are the result of cordic operation.
In some embodiments, x (n), y (n), α (n), and n are each registered in a register.
cordic operation can approximate values of trigonometric functions such as sine values and cosine values through multi-stage operation, and the more the number of stages of operation is, the more accurate the result is.
In the prior art, referring generally to fig. 4, corresponding hardware is provided for each stage of operation, i.e. cordic operation is implemented by pipeline (linear pipeline) structure. However, the number of hardware (e.g., registers) required for such an approach is matched to the number of stages of operation, thus leading to the following problems:
(1) if the operation stage number is larger, the required hardware is excessive, and the circuit structure is complex;
(2) if the number of operation stages is small, the precision of the obtained result is too low, and the processing effect of video rotation is influenced.
In the embodiment of the present disclosure, cordic operation can be implemented in a "state machine" manner, that is, cordic operation can be implemented in a "judgment + iteration" manner, so that no matter how many stages of operation are required, only fixed devices are used, for example, only 4 registers are needed to register the values x (n), y (n), α (n), and n.
Therefore, the cordic operation mode of the state machine in the embodiment of the disclosure needs a small amount of hardware, has a simple circuit structure, and can realize high-precision calculation under the condition of meeting the requirement of the operation clock. For example, high accuracy results may be calculated within the "blanking interval" of the video.
The cordic operation of the embodiment of the present disclosure may be used for the operation of sin θ and cos θ, and may also be used for the operation of Xa*sinθ、XaCos theta or X'a*sinθ、X‘aOperation of cos θ, also applicable to Y abovea*sinθ、YaCos theta or Y'a*sinθ、Y’aOperation of cos θ.
Wherein, for each cordic operation with different purposes, the initial length used in the setting operation is 1 and XaOr X'aIs YaOr Y'aThat is, the operation process is essentially the same.
Next, referring to fig. 5, a specific principle of cordic operation according to an embodiment of the present disclosure will be described.
Suppose there is a line segment P' O (O is the origin) in a coordinate system, which forms an angle with the x-axis of above rotation angle θ.
And assuming that a P point exists in the coordinate system, and performing multiple iterations on the P point, wherein in the nth iteration, the PO is rotated towards the direction of the P' O, and the rotated P point is taken as the P point in the (n +1) th iteration.
In the nth iteration, the coordinate of the point P is (x), (n) and y (n)), the included angle between the PO and the x axis is alpha (n), and the rotation angle of the PO is beta (n).
To defineThereby havingI.e. the tangent of the corner in each iteration is half the tangent of the corner in the previous iteration, and p (n) decreases gradually as the iteration progresses.
The positive and negative (or rotation direction) of β (n) is determined according to the relationship between α (n) and θ, specifically, β (n) is required to rotate PO in the direction of P' O, and if counterclockwise rotation is taken as the positive direction, there are:
(1) when alpha (n) is smaller than theta, the PO rotates anticlockwise, and beta (n) is positive;
(2) when α (n) is greater than θ, PO rotates clockwise and β (n) is negative.
Among them, according to the requirement for β (n), the cumulative rotational range of PO is inevitably in the range of [ -99.7 °, 99.7 ° ], and since the interval is larger than 180 °, α (n) is inevitably made substantially equal to θ (or θ +180 °) by a plurality of rotations.
As can be seen from the geometric relationship, when the counterclockwise direction is taken as the positive direction, the coordinates of the P point before and after the nth iteration satisfy the following relationship:
x(n+1)=x(n)cosβ(n)-y(n)sinβ(n)=cosβ(n)[x(n)-y(n)tanβ(n)];
y(n+1)=y(n)cosβ(n)+x(n)sinβ(n)=cosβ(n)[y(n)+x(n)tanβ(n)];
wherein x (n), y (n) are obtained from the previous iterationThe value of cos β (n) is also determined and can be pre-stored, so that x (n +1) and y (n +1) can be calculated.
As described above, as the iteration progresses, β (n) becomes smaller and the difference between α (n) and θ necessarily becomes smaller, so if α (m) is considered to almost coincide with θ after m iterations (i.e., a preset maximum number of iterations), the following formula is approximately considered to be satisfied:
x(m)=(x(0)cosθ-y(0)sinθ)*1/IIcosβ(i);
y(m)=(y(0)cosθ+x(0)sinθ)*1/IIcosβ(i);
where m is a maximum number of iterations preset according to the required accuracy, and pi represents the product when i takes different values, i being 0, 1, 2.
For example, when m is 15, β (m) is 0.0017485 °, cos β (15) is 0.999999995, and 1/ncos β (i) is 1.64676.
Thus, if the set initial position of the point P satisfies: when y (0) is 0 and x (0) is Π cos β (m) (for example, when m is 15, x (0) is 0.607253), the above equation is simplified as follows:
x(m)=cosθ;
y(m)=sinθ。
that is, if y (0), x (0) are set, x (m) and y (m) obtained in the mth iteration are cos θ and sin θ, that is, the output result of cordic operation.
Wherein when the above X is to be calculateda*sinθ、XaCos theta (or X'a*sinθ、X‘aCos θ), let X (0) be IIcos β (m) Xa(or X'a) Then the method is finished; when the above Y is to be calculateda*sinθ、YaCos θ (or Y'a*sinθ、Y‘aCos θ), let x (0) be IIcos β (m) Ya(or Y'a) That is, they will not be described in detail herein.
In some embodiments, referring to fig. 3, after determining the coordinates of other pixels in the first image in the second image (step S103), the method further includes:
and S104, determining an output image according to the original image and the coordinates of all pixels in the first image in the second image.
After determining the coordinates (abscissa, ordinate) of each pixel in the first image in the second image, that is, determining the corresponding pixel of each pixel in the first image in the second image (i.e., the pixels in the second image having the same or similar coordinates); obviously, the corresponding pixels should have the same pixel values (e.g., three gray levels of red, green and blue), so that the pixel values of all the pixels in the output image are known, and the output image is obtained.
It should be understood that the original image and the pixels in the output image are not necessarily in a one-to-one correspondence relationship, and the output image may be scaled, deformed, and the like according to the condition of the display screen and the like when actually displayed, and will not be described in detail herein.
In a second aspect, referring to fig. 6, an embodiment of the present disclosure provides an apparatus for video rotation, including:
the acquisition module is configured to acquire an original image of one frame of the video and a rotation angle theta thereof.
And the first determining module is configured to determine sin theta and cos theta according to theta, and determine the coordinate of a calibration pixel in the first image in the second image.
And a second determining module configured to determine coordinates of other pixels in the first image in the second image by accumulating sin theta and cos theta on the coordinates of the calibration pixel in the second image.
One of the first image and the second image is an original image, and the other image is an output image obtained by rotating the original image by theta; the pixels in the original image and the output image are arranged in a plurality of rows and columns which are mutually vertical, the coordinates comprise an abscissa along the row direction and an ordinate along the column direction, and the size of each pixel in the abscissa and the ordinate is 1.
The video rotation device of the embodiment of the present disclosure can implement the above method of video rotation, and therefore includes modules for implementing the above steps.
It should be understood that each of the above modules is not necessarily an independent device, and a plurality of modules may be integrated into a whole, and a module may be further divided into a plurality of different parts (for example, the second determining module may include three parts for performing the above three cordic operations, respectively).
In a third aspect, referring to fig. 7, an embodiment of the present disclosure provides a computer readable medium, on which a computer program is stored, and the computer program is executed by a processor to implement any one of the above-mentioned methods for video rotation.
Wherein the computer readable medium is a device having data storage capabilities including, but not limited to, random access memory (RAM, more specifically SDRAM, DDR, etc.), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), FLASH memory (FLASH); the I/O interface (read/write interface) is connected between the processor and the memory, and can realize information interaction between the memory and the processor, including but not limited to a data Bus (Bus) and the like.
One of ordinary skill in the art will appreciate that all or some of the steps, systems, functional modules/units in the devices disclosed above may be implemented as software, firmware, hardware, and suitable combinations thereof.
In a hardware implementation, the division between functional modules/units mentioned in the above description does not necessarily correspond to the division of physical components; for example, one physical component may have multiple functions, or one function or step may be performed by several physical components in cooperation.
Some or all of the physical components may be implemented as software executed by a processor, such as a Central Processing Unit (CPU), digital signal processor, or microprocessor, or as hardware, or as an integrated circuit, such as an application specific integrated circuit. Such software may be distributed on computer readable media, which may include computer storage media (or non-transitory media) and communication media (or transitory media). The term computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data, as is well known to those of ordinary skill in the art. Computer storage media includes, but is not limited to, random access memory (RAM, more specifically SDRAM, DDR, etc.), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), FLASH memory (FLASH), or other disk storage; compact disk read only memory (CD-ROM), Digital Versatile Disk (DVD), or other optical disk storage; magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage; any other medium which can be used to store the desired information and which can be accessed by the computer. In addition, communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media as known to those skilled in the art.
The present disclosure has disclosed example embodiments and, although specific terms are employed, they are used and should be interpreted in a generic and descriptive sense only and not for purposes of limitation. In some instances, features, characteristics and/or elements described in connection with a particular embodiment may be used alone or in combination with features, characteristics and/or elements described in connection with other embodiments, unless expressly stated otherwise, as would be apparent to one skilled in the art. Accordingly, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the scope of the disclosure as set forth in the appended claims.
Claims (10)
1. A method of video rotation, comprising:
acquiring an original image of one frame of a video and a rotation angle theta thereof;
according to the theta, determining sin theta and cos theta, and determining the coordinate of a calibration pixel in the first image in the second image;
determining coordinates of other pixels in the first image in the second image by accumulating sin theta and cos theta on the coordinates of the calibration pixel in the second image;
one of the first image and the second image is an original image, and the other image is an output image obtained by rotating the original image by theta; the pixels in the original image and the pixels in the output image are all arranged in a plurality of rows and columns which are mutually vertical, the coordinates comprise an abscissa along the row direction and an ordinate along the column direction, and the size of each pixel in the abscissa and the ordinate is 1.
2. The method of claim 1, wherein,
the calibration pixel is a pixel of any corner in the first image.
3. The method of claim 2, wherein,
the first image is an original image, and the second image is an output image; the determining coordinates of other pixels in the first image in the second image comprises: according to a formula X'(i+1,j)=X’(i,j)+cosθ、Y′(i+1,j)=Y’(i,j)+sinθ、X′(i,j+1)=X’(i,j)-sinθ、Y′(i,j+1)=Y’(i,j)+ cos theta calculates the horizontal coordinate and the vertical coordinate of other pixels in the original image in the output image in turn;
or,
the first image is an output image, and the second image is an original image; the determining coordinates of other pixels in the first image in the second image comprises: according to formula X(i+1,j)=X(i,j)+cosθ、Y(i+1,j)=Y(i,j)-sinθ、X(i,j+1)=X(i,j)+sinθ、Y(i,j+1)=Y(i,j)+ cos theta calculates the horizontal coordinate and the vertical coordinate of other pixels in the original image in the output image in turn;
wherein θ is positive in a counterclockwise direction; the positive direction of the abscissa is the same as the positive direction of the ordinate after being rotated counterclockwise by 90 degrees; x'(a,b)Is the abscissa, Y 'of the pixel in the original image along the b-th row and the a-th column in the forward direction in the output image'(a,b)The ordinate of the pixel along the b-th line and the a-th column in the positive direction in the original image in the output image is shown; x(a,b)Is the abscissa, Y, of the pixel in the original image along the b-th row and the a-th column in the forward direction(a,b)For positive edges in the output imageThe vertical coordinate of the pixel in the b-th row and the a-th column in the original image.
4. The method of claim 1, wherein the determining sin θ, cos θ comprises:
with 1 as the initial length, sin theta and cos theta are obtained through a cordic algorithm.
5. The method of claim 1, wherein,
the first image is an original image, and the second image is an output image; the determining the coordinates of a calibration pixel in the first image in the second image comprises: with XaFor the initial length, X is obtained by cordic operationa*sinθ、XaCos θ; with YaFor the initial length, Y is obtained by cordic operationa*sinθ、YaCos θ; according to a formula X'a=Xa*cosθ-YaSin theta and Y'a=Xa*sinθ+YaCalculating the horizontal coordinate and the vertical coordinate of the calibration pixel in the output image by cos theta;
or,
the first image is an output image, and the second image is an original image; the determining the coordinates of a calibration pixel in the first image in the second image comprises: by X'aIs an initial length, X 'is obtained by cordic calculation'a*sinθ、X‘aCos θ; from Y'aIs an initial length, and is calculated by cordic to obtain Y'a*sinθ、Y’aCos θ; according to formula Xa=X‘a*cosθ+Y’aSin theta and Ya=-X’a*sinθ+Y‘aCalculating the horizontal coordinate and the vertical coordinate of the calibration pixel in the output image by cos theta;
wherein θ is positive in a counterclockwise direction; the positive direction of the abscissa is the same as the positive direction of the ordinate after being rotated counterclockwise by 90 degrees; xa、YaRespectively represents the abscissa and ordinate, X 'of the calibration pixel in the original image'a、Y‘aRespectively, the abscissa and the ordinate of the calibration pixel in the output image.
6. The method of claim 4 or 5, wherein the cordic operation comprises:
setting the current iteration number n to be 0, and determining x (0) and y (0); x (n), y (n) and y (n) are respectively an abscissa and an ordinate of a point P in the nth iteration, x (0) is determined according to a preset initial length and a maximum iteration number m, and y (0) is 0;
the nth iteration is performed: determining the position of a point P after the PO rotates around the point O by an angle of beta (n) as the position of the point P in the (n +1) th iteration, and enabling n to be n + 1; wherein, the point O is the origin,the positive and negative of beta (n) are determined according to the relation between the included angle alpha (n) of the PO relative to the x axis before rotation and theta;
if n is less than m, returning to the step of performing the nth iteration; if n ═ m, x (m), y (m) are the results of the cordic calculation.
7. The method of claim 6, wherein,
the x (n), y (n), alpha (n) and n are respectively temporarily stored in a register.
8. The method of claim 1, wherein after said determining coordinates of other pixels in the first image in the second image, further comprising:
and determining an output image according to the original image and the coordinates of all pixels in the first image in the second image.
9. A device of video rotation, comprising:
the acquisition module is configured to acquire an original image of one frame of the video and a rotation angle theta thereof;
the first determining module is configured to determine sin theta and cos theta according to theta, and determine the coordinate of a calibration pixel in the first image in the second image;
a second determining module configured to determine coordinates of other pixels in the first image in the second image by accumulating sin θ and cos θ on the coordinates of the calibration pixel in the second image;
one of the first image and the second image is an original image, and the other image is an output image obtained by rotating the original image by theta; the pixels in the original image and the pixels in the output image are all arranged in a plurality of rows and columns which are mutually vertical, the coordinates comprise an abscissa along the row direction and an ordinate along the column direction, and the size of each pixel in the abscissa and the ordinate is 1.
10. A computer-readable medium, on which a computer program is stored which, when being executed by a processor, carries out the method of video rotation according to any one of claims 1 to 8.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110235112.5A CN113014991B (en) | 2021-03-03 | 2021-03-03 | Method and device for video rotation and computer readable medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110235112.5A CN113014991B (en) | 2021-03-03 | 2021-03-03 | Method and device for video rotation and computer readable medium |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113014991A true CN113014991A (en) | 2021-06-22 |
CN113014991B CN113014991B (en) | 2022-12-16 |
Family
ID=76403775
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110235112.5A Active CN113014991B (en) | 2021-03-03 | 2021-03-03 | Method and device for video rotation and computer readable medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113014991B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115314692A (en) * | 2022-10-12 | 2022-11-08 | 珠海翔翼航空技术有限公司 | Image communication method and device |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6463081B1 (en) * | 1998-04-07 | 2002-10-08 | United Microelectronics Corp. | Method and apparatus for fast rotation |
JP2011003196A (en) * | 2009-06-19 | 2011-01-06 | Ricoh Co Ltd | Digital image processing system and method |
CN103826068A (en) * | 2014-03-03 | 2014-05-28 | 南京航空航天大学 | Video image rotation method |
CN106408517A (en) * | 2016-08-31 | 2017-02-15 | 天津大学 | Rapid image rotation method |
CN109685715A (en) * | 2018-12-12 | 2019-04-26 | 中国航空工业集团公司西安航空计算技术研究所 | A kind of stepless rotation processing method of high precision image in display system |
-
2021
- 2021-03-03 CN CN202110235112.5A patent/CN113014991B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6463081B1 (en) * | 1998-04-07 | 2002-10-08 | United Microelectronics Corp. | Method and apparatus for fast rotation |
JP2011003196A (en) * | 2009-06-19 | 2011-01-06 | Ricoh Co Ltd | Digital image processing system and method |
CN103826068A (en) * | 2014-03-03 | 2014-05-28 | 南京航空航天大学 | Video image rotation method |
CN106408517A (en) * | 2016-08-31 | 2017-02-15 | 天津大学 | Rapid image rotation method |
CN109685715A (en) * | 2018-12-12 | 2019-04-26 | 中国航空工业集团公司西安航空计算技术研究所 | A kind of stepless rotation processing method of high precision image in display system |
Non-Patent Citations (4)
Title |
---|
崔振辉等: "基于边界定位和对称性的高速图像旋转算法", 《天津大学学报》 * |
李洪伟: "图像跟踪器中视频处理系统的设计与电子消像旋的实现", 《中国优秀硕博士学位论文全文数据库(硕士)信息科技辑》 * |
王滨海等: "图像旋转算法的分析与对比", 《光学与光电技术》 * |
田力等: "基于CORDIC算法的NCO实现", 《中国集成电路》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115314692A (en) * | 2022-10-12 | 2022-11-08 | 珠海翔翼航空技术有限公司 | Image communication method and device |
Also Published As
Publication number | Publication date |
---|---|
CN113014991B (en) | 2022-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105389290B (en) | Efficient interpolation | |
CN111932437B (en) | Image processing method, image processing device, electronic equipment and computer readable storage medium | |
EP3093757B1 (en) | Multi-dimensional sliding window operation for a vector processor | |
CN111091572B (en) | Image processing method and device, electronic equipment and storage medium | |
US20160063676A1 (en) | Image Scaling Techniques | |
CN113538281B (en) | Image denoising method, image denoising device, computer equipment and storage medium | |
CN110599427A (en) | Fisheye image correction method and device and terminal equipment | |
CN110969580A (en) | Image display method and device | |
CN113014991B (en) | Method and device for video rotation and computer readable medium | |
CN112765540A (en) | Data processing method and device and related products | |
CN116012241A (en) | Image distortion correction method, apparatus, computer device, and storage medium | |
CN113962877A (en) | Correction method and correction device for pixel distortion and terminal | |
JP2000182039A5 (en) | ||
CN111861865A (en) | Circuit device, electronic apparatus, and moving object | |
CN108734665A (en) | A kind of bearing calibration of image, device, equipment and storage medium | |
CN110663046B (en) | Hardware accelerator for directional gradient histogram calculation | |
CN109872275B (en) | Image processing method, device, electronic equipment and computer readable storage medium | |
US20150187049A1 (en) | Method and device for image zoom out processing | |
CN113420604B (en) | Multi-person posture estimation method and device and electronic equipment | |
CN112053656B (en) | Method and device for controlling refreshing of rotary LED lamp strip and display equipment | |
CN114363519A (en) | Image processing method and device and electronic equipment | |
CN113703653A (en) | Image processing method, device, equipment and computer readable storage medium | |
CN111626938A (en) | Image interpolation method, image interpolation device, terminal device, and storage medium | |
US10789072B2 (en) | Parallel processor for calculating operand and result addresses as a function of a position of a field of action and predetermined positions of processing elements in non-homogeneous address zones within a topology | |
US9911229B2 (en) | Transmission and configuration of three dimensional digital content |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 230088 north, 9th floor, B1 building, animation base, 800 Wangjiang West Road, high tech Zone, Hefei City, Anhui Province Applicant after: Hongjing Microelectronics Technology Co.,Ltd. Address before: 230088 north, 9th floor, B1 building, animation base, 800 Wangjiang West Road, high tech Zone, Hefei City, Anhui Province Applicant before: HEFEI MACROSILICON TECHNOLOGY CO.,LTD. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |