CN108600783B - Frame rate adjusting method and device and terminal equipment - Google Patents
Frame rate adjusting method and device and terminal equipment Download PDFInfo
- Publication number
- CN108600783B CN108600783B CN201810368955.0A CN201810368955A CN108600783B CN 108600783 B CN108600783 B CN 108600783B CN 201810368955 A CN201810368955 A CN 201810368955A CN 108600783 B CN108600783 B CN 108600783B
- Authority
- CN
- China
- Prior art keywords
- image frame
- value
- frame
- image
- difference
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 230000008859 change Effects 0.000 claims abstract description 137
- 238000011156 evaluation Methods 0.000 claims abstract description 39
- 238000004590 computer program Methods 0.000 claims description 19
- 238000004364 calculation method Methods 0.000 claims description 18
- 230000008569 process Effects 0.000 claims description 13
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 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
- 238000009877 rendering Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234381—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering the temporal resolution, e.g. decreasing the frame rate by frame skipping
-
- 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/440281—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the temporal resolution, e.g. by frame skipping
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
The application is applicable to the technical field of computers, and provides a frame rate adjusting method, a frame rate adjusting device and terminal equipment, wherein the frame rate adjusting method comprises the following steps: acquiring a pixel value of a current image frame in a video, and calculating a change degree difference value of the current image frame; calculating the difference value of the change degree of the subsequent image frames in the video; to generate an image difference record; calculating an image change evaluation value of a subsequent image frame according to the image difference record; and if the image change evaluation value is not within the preset threshold range, adjusting the receiving frame rate of the subsequent image frame. The change degree of the next frame of image in the video is estimated according to the change degree difference value of each frame of image in the received video within a period of time, so that the receiving frame rate of the subsequent image frame is automatically adjusted, the error of manually adjusting the frame rate by a user can be avoided, the shared bandwidth and the resource occupation of a screen can be reduced by adopting a lower frame rate on the premise of not influencing the user experience when the change of the image is relatively small, and the flow cost is saved for a service provider.
Description
Technical Field
The present application belongs to the field of computer technologies, and in particular, to a frame rate adjustment method, an apparatus, and a terminal device.
Background
The screen sharing process includes the processing processes of acquisition, encoding, transmission of the shared end screen, decoding and rendering of the receiving end, and the like, as shown in fig. 1. In order to obtain a good sharing effect in screen sharing, a high resolution and a high frame rate are generally set. For a terminal user, high frame rate video occupies a large amount of bandwidth and terminal CPU performance, and may affect the operation of other applications; for a service provider, high frame rate video inevitably results in high traffic, resulting in high cost; and for static scenes with relatively small picture changes, a higher frame rate is not required; for a dynamic scene with relatively large picture change, such as a shared media video, the frame rate needs to be properly increased. When the two scenes are switched, a user can manually adjust the frame rate of the screen according to the scenes and experience generally, but the adjustment mode has large error and is difficult to adjust to the proper frame rate.
Disclosure of Invention
In view of this, embodiments of the present application provide a frame rate adjustment method, an apparatus, and a terminal device, so as to solve the problem in the prior art that an error of manually adjusting a frame rate is large when a screen is shared, and it is difficult to adjust a frame rate to a proper frame rate.
A first aspect of an embodiment of the present application provides a frame rate adjustment method, where the frame rate adjustment method includes:
acquiring a pixel value of a current image frame in a video, and calculating a change degree difference value of the current image frame according to the pixel value;
calculating a variation degree difference value of a subsequent image frame in the video;
obtaining the change degree difference values of the same number of continuous image frames according to a preset number threshold value to generate an image difference record;
calculating an image change evaluation value of a subsequent image frame according to the image difference record;
and if the image change evaluation value is not within the preset threshold value range, adjusting the receiving frame rate of the subsequent image frame.
A second aspect of an embodiment of the present application provides a frame rate adjusting apparatus, including:
the acquisition module is used for acquiring the pixel value of a current image frame in a video and calculating the change degree difference value of the current image frame according to the pixel value;
the change degree difference value calculation module is used for calculating the change degree difference value of the subsequent image frame in the video;
the generating unit is used for acquiring the change degree difference values of the same number of continuous image frames according to a preset number threshold value so as to generate an image difference record;
the image change evaluation value calculation module is used for calculating the image change evaluation value of the subsequent image frame according to the image difference record;
and the adjusting module is used for adjusting the receiving frame rate of the subsequent image frame when the image change evaluation value is not in the range of the preset threshold value.
A third aspect of the embodiments of the present application provides a terminal device, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor, and the processor, when executing the computer program, implements the steps of the method according to any one of the frame rate adjustment methods.
A fourth aspect of embodiments of the present application provides a computer-readable storage medium, in which a computer program is stored, which, when executed by a processor, implements the steps of the method as in any one of the frame rate adjustment methods.
In the embodiment of the application, when screen sharing is carried out, a sharing end or a receiving end acquires a pixel value of a current image frame in a video, and calculates a change degree difference value of the current image frame according to the pixel value; updating the current image frame, continuously calculating the change degree differential value of the subsequent image frame in the video until the number of the calculated change degree differential value reaches a preset number threshold value, generating an image differential record according to each calculated change degree differential value, calculating an image change evaluation value of the subsequent image frame according to the image differential record, and adjusting the receiving frame rate of the subsequent image frame if the image change evaluation value is not within the preset threshold value range. In the process, the change degree of the next frame of image in the video is estimated according to the change degree difference value of each frame of image in the received video within a period of time, so that the receiving frame rate of the subsequent image frame is automatically adjusted, the error of manually adjusting the frame rate by a user can be avoided, and a lower frame rate can be adopted when the change of the image is relatively small, so that the bandwidth and the resource occupation of screen sharing are reduced on the premise of not influencing the user experience, and the flow cost is saved for a service provider.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the embodiments or the prior art descriptions will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without inventive exercise.
FIG. 1 is a diagram illustrating a screen sharing process provided by an embodiment of the present application;
fig. 2 is a schematic flow chart of an implementation of a frame rate adjustment method provided in an embodiment of the present application;
fig. 3 is a schematic diagram of a frame rate adjusting apparatus according to an embodiment of the present disclosure;
fig. 4 is a schematic diagram of a terminal device provided in an embodiment of the present application.
Detailed Description
In the following description, for purposes of explanation and not limitation, specific details are set forth, such as particular system structures, techniques, etc. in order to provide a thorough understanding of the embodiments of the present application. It will be apparent, however, to one skilled in the art that the present application may be practiced in other embodiments that depart from these specific details. In other instances, detailed descriptions of well-known systems, devices, circuits, and methods are omitted so as not to obscure the description of the present application with unnecessary detail.
In the embodiment of the application, when screen sharing is carried out, a sharing end or a receiving end acquires a pixel value of a current image frame in a video, and calculates a change degree difference value of the current image frame according to the pixel value; updating the current image frame, continuously calculating the change degree differential value of the subsequent image frame in the video until the number of the calculated change degree differential value reaches a preset number threshold value, generating an image differential record according to each calculated change degree differential value, calculating an image change evaluation value of the subsequent image frame according to the image differential record, and adjusting the receiving frame rate of the subsequent image frame if the image change evaluation value is not within the preset threshold value range.
In order to explain the technical solution described in the present application, the following description will be given by way of specific examples.
The first embodiment is as follows:
fig. 2 shows a schematic implementation flow diagram of the frame rate adjustment method provided in the embodiment of the present application, which is detailed as follows:
step S21, obtaining the pixel value of the current image frame in the video, calculating the change degree difference value of the current image frame according to the pixel value;
in the embodiment provided by the application, a feedback loop is arranged at a sharing end or a receiving end shared by a screen to acquire the pixel value of the current image frame in the video, and the change degree difference value of the current image frame is calculated based on an image difference algorithm according to the pixel value of the current image frame. The method specifically comprises the following steps: obtaining the pixel value of the previous image frame, making difference between the pixels at the corresponding positions of the two image frames to remove or weaken the similar part, reserving the changed part, then calling a first preset algorithm, converting the changed pixel value after difference into a scalar value for marking the image change degree, namely the change degree difference value of the current image frame, and recording the scalar value as X1。
Optionally, in another embodiment provided by the present application, after the acquiring the pixel values of the current image frame in the video, the method further includes:
judging whether the current image frame is a first frame image;
and if so, storing the current image frame to continuously receive the next image frame and updating the current image frame.
In this step, it is determined whether the received current image frame is the first image frame, and if so, it indicates that no other image exists before the current image frame, so that the current image frame is stored, the next image frame is continuously received, and the step S21 is executed after the next image frame is updated to be the current image frame.
Optionally, in another embodiment provided by the present application, the calculating the difference value of the degree of change of the current image frame according to the pixel value includes:
acquiring Y, U, V components corresponding to the pixel value of the current image frame x and the pixel value of the previous image frame y respectively;
according to the formula:calculate to obtain the currentThe degree of change of the image frame is differentiated by a value f (x, y).
In this step, when the current image frame is in YUV format (YUV is a color coding method (belonging to PAL) adopted by the european television system), for the current image frame x and the previous image frame y, assuming that the resolutions of the x and y images are the same, the number of pixels is N +1, Y, U, V components of the x and y image frames are respectively obtained, and according to the formula, the Y, U, V components of the x and y image frames are respectively obtainedCalculating a difference value f (x, y) of the change degree of the current image frame; wherein: and I, representing the ith pixel point, wherein N +1 is the total number of the pixel points.
Step S22, calculating the difference value of the change degree of the subsequent image frame in the video;
in this step, the subsequent image frames in the video are continuously acquired, the newly acquired image frame is updated to the current image frame, the difference value of the degree of change of the updated current image frame is continuously calculated by the algorithm in step S21, and the difference value X of the degree of change is respectively obtained2、…、Xk。
Step S23, obtaining the variation degree difference values of the same number of continuous image frames according to a preset number threshold value to generate an image difference record;
in this step, the difference value X of the degree of change obtained by each calculation is recorded1、…、XkAnd generating an image differential record according to the recorded change degree differential value until the number of the change degree differential value is the same as a preset number threshold.
Optionally, the obtaining the difference values of the change degrees of the same number of consecutive image frames according to a preset number threshold to generate an image difference record includes:
recording the change degree difference value obtained by each calculation to a difference sliding window until the number of the change degree difference values recorded by the difference sliding window reaches the preset number threshold;
and forming an image difference record according to all the change degree difference values recorded in the difference sliding window.
In this step, the calculated change degree difference value is recorded in a difference sliding window, the number of the change degree difference values recorded in the difference sliding window is the same as the preset number threshold, and an image difference record is generated according to the change degree difference value recorded in the difference sliding window. Since the difference value of the degree of change is continuously updated along with the received image frames, recording the difference value of the degree of change in the difference sliding window allows the current image frame corresponding to the currently generated image difference record to be visually seen.
Step S24, calculating an image change evaluation value of a subsequent image frame according to the image difference record;
in this step, an image change evaluation value of a subsequent image frame is calculated by a preset algorithm according to the obtained image difference record, and it should be noted that the subsequent image frame in this step is an image frame that has not been involved in calculating the image difference value.
In step S25, if the image variation evaluation value is not within the preset threshold range, the receiving frame rate of the subsequent image frame is adjusted.
The embodiment provided by the application judges the evaluation value of the image change calculated by the preset algorithm. And judging whether the image change evaluation value is within a preset threshold range, and if not, adjusting the receiving frame rate of the subsequent image frame. The method specifically comprises the following steps: if the image change evaluation value is larger than the maximum value of the preset threshold range, improving the receiving frame rate of the subsequent image frame; and if the image change evaluation value is smaller than the minimum value of the preset threshold range, reducing the receiving frame rate of the subsequent image frame. The preset threshold range is set by a user, and is not limited herein.
Optionally, in another embodiment provided by the present application, the adjusting the receiving frame rate of the subsequent image frame includes:
acquiring a preset gradient value;
and adjusting the receiving frame rate of the subsequent image frame step by step according to the gradient value.
And the step of calling a gradient value preset by a user and adjusting the receiving frame rate of the subsequent image frame step by step according to the gradient value preset by the user.
In the embodiment of the application, when screen sharing is carried out, a sharing end or a receiving end acquires a pixel value of a current image frame in a video, and calculates a change degree difference value of the current image frame according to the pixel value; updating the current image frame, continuously calculating the change degree differential value of the subsequent image frame in the video until the number of the calculated change degree differential value reaches a preset number threshold value, generating an image differential record according to each calculated change degree differential value, calculating an image change evaluation value of the subsequent image frame according to the image differential record, and adjusting the receiving frame rate of the subsequent image frame if the image change evaluation value is not within the preset threshold value range. In the process, the change degree of the next frame of image in the video is estimated according to the change degree difference value of each frame of image in the received video within a period of time, so that the receiving frame rate of the subsequent image frame is automatically adjusted, the error of manually adjusting the frame rate by a user can be avoided, and a lower frame rate can be adopted when the change of the image is relatively small, so that the bandwidth and the resource occupation of screen sharing are reduced on the premise of not influencing the user experience, and the flow cost is saved for a service provider.
Example two:
fig. 3 shows a block diagram of a frame rate adjusting apparatus provided in an embodiment of the present application, which corresponds to the frame rate adjusting method described in the foregoing embodiment, and only shows portions related to the embodiment of the present application for convenience of description.
Referring to fig. 3, the frame rate adjusting apparatus includes: an acquisition module 31, a variation degree difference value calculation module 32, a generation module 33, an image variation evaluation value calculation module 34, and an adjustment module 35, wherein:
an obtaining module 31, configured to obtain a pixel value of a current image frame in a video, and calculate a difference value of a change degree of the current image frame according to the pixel value;
a change degree difference value calculating module 32, configured to calculate a change degree difference value of a subsequent image frame in the video;
the generating module 33 is configured to obtain the change degree difference values of the same number of consecutive image frames according to a preset number threshold, so as to generate an image difference record;
an image variation evaluation value calculation module 34, configured to calculate an image variation evaluation value of a subsequent image frame according to the image difference record;
and an adjusting module 35, configured to adjust a receiving frame rate of a subsequent image frame when the image variation evaluation value is not within a preset threshold range.
Further, the change degree difference value calculating module 32 includes:
a component obtaining unit, configured to obtain Y, U, V components corresponding to the pixel value of the current image frame x and the pixel value of the previous image frame y respectively;
a calculation unit for, according to the formula:and calculating to obtain a difference value f (x, y) of the change degree of the current image frame.
Further, the frame rate adjusting apparatus further includes:
the storage module is used for judging whether the current image frame is a first frame image; and if so, storing the current image frame to continuously receive the next image frame and updating the current image frame.
Further, the generating module 33 includes:
the recording unit is used for recording the change degree difference value obtained by each calculation to a difference sliding window until the number of the change degree difference values recorded by the difference sliding window reaches the preset number threshold;
and the image difference record generating unit is used for forming an image difference record according to all the change degree difference values recorded in the difference sliding window.
Further, the adjustment module includes:
a gradient value acquisition unit for acquiring a preset gradient value;
and the step-by-step adjusting unit is used for adjusting the receiving frame rate of the subsequent image frame step by step according to the gradient value.
In the embodiment of the application, when screen sharing is carried out, a sharing end or a receiving end acquires a pixel value of a current image frame in a video, and calculates a change degree difference value of the current image frame according to the pixel value; updating the current image frame, continuously calculating the change degree differential value of the subsequent image frame in the video until the number of the calculated change degree differential value reaches a preset number threshold value, generating an image differential record according to each calculated change degree differential value, calculating an image change evaluation value of the subsequent image frame according to the image differential record, and adjusting the receiving frame rate of the subsequent image frame if the image change evaluation value is not within the preset threshold value range. In the process, the change degree of the next frame of image in the video is estimated according to the change degree difference value of each frame of image in the received video within a period of time, so that the receiving frame rate of the subsequent image frame is automatically adjusted, the error of manually adjusting the frame rate by a user can be avoided, a lower frame rate can be adopted on the premise of not influencing the user experience, the bandwidth and the resource occupation shared by a screen are reduced, and the flow cost is saved for a service provider.
It should be understood that, the sequence numbers of the steps in the foregoing embodiments do not imply an execution sequence, and the execution sequence of each process should be determined by its function and inherent logic, and should not constitute any limitation to the implementation process of the embodiments of the present application.
Example three:
fig. 4 is a schematic diagram of a terminal device according to an embodiment of the present application. As shown in fig. 4, the terminal device 4 of this embodiment includes: a processor 40, a memory 41 and a computer program 42 stored in said memory 41 and executable on said processor 40. The processor 40 executes the computer program 42 to implement the steps of the frame rate adjustment method embodiments, such as the steps S21 to S25 shown in fig. 2. Alternatively, the processor 40, when executing the computer program 42, implements the functions of the modules/units in the above-mentioned device embodiments, such as the functions of the modules 31 to 35 shown in fig. 3.
Illustratively, the computer program 42 may be partitioned into one or more modules/units that are stored in the memory 41 and executed by the processor 40 to accomplish the present application. The one or more modules/units may be a series of computer program instruction segments capable of performing specific functions, which are used to describe the execution process of the computer program 42 in the terminal device 4. For example, the computer program 42 may be divided into: the image processing device comprises an acquisition module, a change degree difference value calculation module, a generation module, an image change evaluation value calculation module and an adjustment module, wherein:
the acquisition module is used for acquiring the pixel value of a current image frame in a video and calculating the change degree difference value of the current image frame according to the pixel value;
the change degree difference value calculation module is used for calculating the change degree difference value of the subsequent image frame in the video;
the generating module is used for acquiring the change degree difference values of the same number of continuous image frames according to a preset number threshold value so as to generate an image difference record;
the image change evaluation value calculation module is used for calculating the image change evaluation value of the subsequent image frame according to the image difference record;
and the adjusting module is used for adjusting the receiving frame rate of the subsequent image frame when the image change evaluation value is not in the range of the preset threshold value.
Further, the change degree difference value calculating module includes:
a component obtaining unit, configured to obtain Y, U, V components corresponding to the pixel value of the current image frame x and the pixel value of the previous image frame y respectively;
a calculation unit for, according to the formula:and calculating to obtain a difference value f (x, y) of the change degree of the current image frame.
Further, the frame rate adjusting apparatus further includes:
the storage module is used for judging whether the current image frame is a first frame image; and if so, storing the current image frame to continuously receive the next image frame and updating the current image frame.
Further, a generation module comprising:
the recording unit is used for recording the change degree difference value obtained by each calculation to a difference sliding window until the number of the change degree difference values recorded by the difference sliding window reaches the preset number threshold;
and the image difference record generating unit is used for forming an image difference record according to all the change degree difference values recorded in the difference sliding window.
Further, the adjustment module includes:
a gradient value acquisition unit for acquiring a preset gradient value;
and the step-by-step adjusting unit is used for adjusting the receiving frame rate of the subsequent image frame step by step according to the gradient value.
The 4 may be a desktop computer, a notebook, a palm computer, a cloud server, and other computing devices. The terminal device may include, but is not limited to, a processor 40, a memory 41. Those skilled in the art will appreciate that fig. 4 is merely an example of a terminal device 4 and does not constitute a limitation of terminal device 4 and may include more or fewer components than shown, or some components may be combined, or different components, e.g., the terminal device may also include input-output devices, network access devices, buses, etc.
The Processor 40 may be a Central Processing Unit (CPU), other general purpose Processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), an off-the-shelf Programmable Gate Array (FPGA) or other Programmable logic device, discrete Gate or transistor logic, discrete hardware components, etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The memory 41 may be an internal storage unit of the terminal device 4, such as a hard disk or a memory of the terminal device 4. The memory 41 may also be an external storage device of the terminal device 4, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card), and the like, which are provided on the terminal device 4. Further, the memory 41 may also include both an internal storage unit and an external storage device of the terminal device 4. The memory 41 is used for storing the computer program and other programs and data required by the terminal device. The memory 41 may also be used to temporarily store data that has been output or is to be output.
It will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-mentioned division of the functional units and modules is illustrated, and in practical applications, the above-mentioned function distribution may be performed by different functional units and modules according to needs, that is, the internal structure of the apparatus is divided into different functional units or modules to perform all or part of the above-mentioned functions. Each functional unit and module in the embodiments may be integrated in one processing unit, or each unit may exist alone physically, or two or more units are integrated in one unit, and the integrated unit may be implemented in a form of hardware, or in a form of software functional unit. In addition, specific names of the functional units and modules are only for convenience of distinguishing from each other, and are not used for limiting the protection scope of the present application. The specific working processes of the units and modules in the system may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the above embodiments, the descriptions of the respective embodiments have respective emphasis, and reference may be made to the related descriptions of other embodiments for parts that are not described or illustrated in a certain embodiment.
Those of ordinary skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
In the embodiments provided in the present application, it should be understood that the disclosed apparatus/terminal device and method may be implemented in other ways. For example, the above-described embodiments of the apparatus/terminal device are merely illustrative, and for example, the division of the modules or units is only one logical division, and there may be other divisions when actually implemented, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated modules/units, if implemented in the form of software functional units and sold or used as separate products, may be stored in a computer readable storage medium. Based on such understanding, all or part of the flow in the method of the embodiments described above can be realized by a computer program, which can be stored in a computer-readable storage medium and can realize the steps of the embodiments of the methods described above when the computer program is executed by a processor. . Wherein the computer program comprises computer program code, which may be in the form of source code, object code, an executable file or some intermediate form, etc. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording medium, usb disk, removable hard disk, magnetic disk, optical disk, computer Memory, Read-Only Memory (ROM), Random Access Memory (RAM), electrical carrier wave signals, telecommunications signals, software distribution medium, and the like. It should be noted that the computer readable medium may contain other components which may be suitably increased or decreased as required by legislation and patent practice in jurisdictions, for example, in some jurisdictions, computer readable media which may not include electrical carrier signals and telecommunications signals in accordance with legislation and patent practice.
The above-mentioned embodiments are only used for illustrating the technical solutions of the present application, and not for limiting the same; although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; such modifications and substitutions do not substantially depart from the spirit and scope of the embodiments of the present application and are intended to be included within the scope of the present application.
Claims (7)
1. A frame rate adjustment method for adjusting a receiving frame rate of a subsequent image frame during screen sharing, the frame rate adjustment method comprising:
the method comprises the steps that a sharing end or a receiving end obtains a pixel value of a current image frame in a video, and a change degree difference value of the current image frame is calculated according to the pixel value, wherein the obtaining process of the change degree difference value of the current image frame comprises the following steps: obtaining a pixel value of a previous image frame of the current image frame, making a difference between the pixel values of corresponding positions of the current image frame and the previous image frame, and converting the pixel value changed after the difference into a scalar value for identifying the change degree of the image, wherein the scalar value is a change degree difference value of the current image frame; wherein the calculating the difference value of the degree of change of the current image frame according to the pixel value includes:
acquiring Y, U, V components corresponding to the pixel value of the current image frame x and the pixel value of the previous image frame y respectively;
according to the formula:calculating to obtain a change degree difference value f (x, y) of the current image frame; wherein: i represents the ith pixel point, and N +1 is the total number of the pixel points;
calculating a difference value of the degree of change of subsequent image frames in the video, including: continuously acquiring subsequent image frames in the video, updating the newly acquired image frames into current image frames, continuously calculating the change degree difference values of the updated current image frames to respectively obtain change degree difference values X2、…、Xk;
Obtaining the change degree difference values of the same number of continuous image frames according to a preset number threshold value to generate an image difference record, comprising:
recording the change degree difference value obtained by each calculation to a difference sliding window until the number of the change degree difference values recorded by the difference sliding window reaches the preset number threshold;
forming an image difference record according to all the change degree difference values recorded in the difference sliding window;
calculating an image change evaluation value of a subsequent image frame according to the image difference record;
if the image change evaluation value is not within the preset threshold range, adjusting the receiving frame rate of the subsequent image frame, including: if the image change evaluation value is larger than the maximum value of the preset threshold range, improving the receiving frame rate of the subsequent image frame; and if the image change evaluation value is smaller than the minimum value of the preset threshold range, reducing the receiving frame rate of the subsequent image frame.
2. The frame rate adjustment method of claim 1, wherein the adjusting the receiving frame rate of the subsequent image frame comprises:
acquiring a preset gradient value;
and adjusting the receiving frame rate of the subsequent image frame step by step according to the gradient value.
3. The method for adjusting frame rate according to claim 1, further comprising, after said obtaining pixel values of a current image frame in the video:
judging whether the current image frame is a first frame image;
and if so, storing the current image frame to continuously receive the next image frame and updating the current image frame.
4. A frame rate adjusting apparatus for adjusting a frame rate of receiving a subsequent image frame during screen sharing, the frame rate adjusting apparatus comprising:
an obtaining module, configured to obtain a pixel value of a current image frame in a video at a sharing end or a receiving end, and calculate a change degree difference value of the current image frame according to the pixel value, where the obtaining process of the change degree difference value of the current image frame includes: obtaining a pixel value of a previous image frame of the current image frame, making a difference between the pixel values of corresponding positions of the current image frame and the previous image frame, and converting the pixel value changed after the difference into a scalar value for identifying the change degree of the image, wherein the scalar value is a change degree difference value of the current image frame; wherein the calculating the difference value of the degree of change of the current image frame according to the pixel value includes:
acquiring Y, U, V components corresponding to the pixel value of the current image frame x and the pixel value of the previous image frame y respectively;
according to the formula:calculating to obtain a change degree difference value f (x, y) of the current image frame; wherein: i represents the ith pixel point, and N +1 is the total number of the pixel points;
a change degree difference value calculating module, configured to calculate a change degree difference value of a subsequent image frame in the video, including: continuously acquiring subsequent image frames in the video, updating the newly acquired image frames into current image frames, continuously calculating the change degree difference values of the updated current image frames to respectively obtain change degree difference values X2、…、Xk;
The generating module is used for obtaining the change degree difference values of the same number of continuous image frames according to a preset number threshold value so as to generate an image difference record, and the generating module comprises:
recording the change degree difference value obtained by each calculation to a difference sliding window until the number of the change degree difference values recorded by the difference sliding window reaches the preset number threshold;
forming an image difference record according to all the change degree difference values recorded in the difference sliding window;
the image change evaluation value calculation module is used for calculating the image change evaluation value of the subsequent image frame according to the image difference record;
an adjusting module, configured to adjust a receiving frame rate of a subsequent image frame when the image variation evaluation value is not within a preset threshold range, including: if the image change evaluation value is larger than the maximum value of the preset threshold range, improving the receiving frame rate of the subsequent image frame; and if the image change evaluation value is smaller than the minimum value of the preset threshold range, reducing the receiving frame rate of the subsequent image frame.
5. The frame rate adjustment device of claim 4, wherein the frame rate adjustment device further comprises:
the storage module is used for judging whether the current image frame is a first frame image; and if so, storing the current image frame to continuously receive the next image frame and updating the current image frame.
6. A terminal device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, characterized in that the processor implements the steps of the method according to any of claims 1 to 3 when executing the computer program.
7. A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, carries out the steps of the method according to any one of claims 1 to 3.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810368955.0A CN108600783B (en) | 2018-04-23 | 2018-04-23 | Frame rate adjusting method and device and terminal equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810368955.0A CN108600783B (en) | 2018-04-23 | 2018-04-23 | Frame rate adjusting method and device and terminal equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108600783A CN108600783A (en) | 2018-09-28 |
CN108600783B true CN108600783B (en) | 2021-03-30 |
Family
ID=63614155
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810368955.0A Active CN108600783B (en) | 2018-04-23 | 2018-04-23 | Frame rate adjusting method and device and terminal equipment |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108600783B (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111246084B (en) * | 2020-01-09 | 2023-08-01 | 西安万像电子科技有限公司 | Method and device for controlling frame rate |
CN112004086B (en) * | 2020-08-21 | 2022-11-11 | Oppo广东移动通信有限公司 | Video data processing method and device |
CN112672155B (en) * | 2020-12-18 | 2024-08-02 | 厦门亿联网络技术股份有限公司 | Desktop sharing method and device based on sharing type discrimination and storage medium |
CN112714273A (en) * | 2020-12-25 | 2021-04-27 | 北京字节跳动网络技术有限公司 | Screen sharing display method, device, equipment and storage medium |
CN115002542B (en) * | 2022-05-26 | 2024-09-17 | 展讯半导体(南京)有限公司 | Frame rate adjustment method and device, computer readable storage medium and terminal |
CN115396696B (en) * | 2022-08-22 | 2024-04-12 | 网易(杭州)网络有限公司 | Video data transmission method, system, processing device and storage medium |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1992858A (en) * | 2005-12-22 | 2007-07-04 | Lg电子株式会社 | Method of recording and reproducing surveillance images in dvr |
CN102695028A (en) * | 2012-05-22 | 2012-09-26 | 广东威创视讯科技股份有限公司 | Dynamic frame rate reduction method and system for video images |
CN103077530A (en) * | 2012-09-27 | 2013-05-01 | 北京工业大学 | Moving object detection method based on improved mixing gauss and image cutting |
CN104270561A (en) * | 2014-08-01 | 2015-01-07 | Tcl通讯(宁波)有限公司 | Method for automatically regulating Camera frame rate of mobile terminal and mobile terminal |
CN105809633A (en) * | 2014-12-29 | 2016-07-27 | 展讯通信(上海)有限公司 | Color noise removing method and device |
CN106303157A (en) * | 2016-08-31 | 2017-01-04 | 广州市百果园网络科技有限公司 | A kind of vedio noise reduction processing method and vedio noise reduction processing means |
CN107093186A (en) * | 2017-03-10 | 2017-08-25 | 北京环境特性研究所 | The strenuous exercise's detection method matched based on edge projection |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100965022B1 (en) * | 2006-02-20 | 2010-06-21 | 도시바 모바일 디스플레이 가부시키가이샤 | El display apparatus and method for driving el display apparatus |
-
2018
- 2018-04-23 CN CN201810368955.0A patent/CN108600783B/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1992858A (en) * | 2005-12-22 | 2007-07-04 | Lg电子株式会社 | Method of recording and reproducing surveillance images in dvr |
CN102695028A (en) * | 2012-05-22 | 2012-09-26 | 广东威创视讯科技股份有限公司 | Dynamic frame rate reduction method and system for video images |
CN103077530A (en) * | 2012-09-27 | 2013-05-01 | 北京工业大学 | Moving object detection method based on improved mixing gauss and image cutting |
CN104270561A (en) * | 2014-08-01 | 2015-01-07 | Tcl通讯(宁波)有限公司 | Method for automatically regulating Camera frame rate of mobile terminal and mobile terminal |
CN105809633A (en) * | 2014-12-29 | 2016-07-27 | 展讯通信(上海)有限公司 | Color noise removing method and device |
CN106303157A (en) * | 2016-08-31 | 2017-01-04 | 广州市百果园网络科技有限公司 | A kind of vedio noise reduction processing method and vedio noise reduction processing means |
CN107093186A (en) * | 2017-03-10 | 2017-08-25 | 北京环境特性研究所 | The strenuous exercise's detection method matched based on edge projection |
Also Published As
Publication number | Publication date |
---|---|
CN108600783A (en) | 2018-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108600783B (en) | Frame rate adjusting method and device and terminal equipment | |
CN111275626B (en) | Video deblurring method, device and equipment based on ambiguity | |
KR102230776B1 (en) | Linear encoder for image/video processing | |
CN111193923B (en) | Video quality evaluation method and device, electronic equipment and computer storage medium | |
CN107403421B (en) | Image defogging method, storage medium and terminal equipment | |
CN111918066A (en) | Video encoding method, device, equipment and storage medium | |
WO2017084258A1 (en) | Method for real-time video noise reduction in coding process, terminal, and nonvolatile computer readable storage medium | |
CN111784570A (en) | Video image super-resolution reconstruction method and device | |
CN109309826B (en) | Image color balancing method and device, terminal equipment and readable storage medium | |
CN111182303A (en) | Encoding method and device for shared screen, computer readable medium and electronic equipment | |
JP2018107797A (en) | Encoding and decoding for image data | |
DE112006002124T5 (en) | Method for improving the contrast enhancement | |
CN109214996B (en) | Image processing method and device | |
WO2020253103A1 (en) | Video image processing method, device, apparatus, and storage medium | |
CN110766153A (en) | Neural network model training method and device and terminal equipment | |
CN108447040A (en) | histogram equalization method, device and terminal device | |
CN110830808A (en) | Video frame reconstruction method and device and terminal equipment | |
CN111757100B (en) | Method and device for determining camera motion variation, electronic equipment and medium | |
CN113096035A (en) | High dynamic range image generation method and device, intelligent terminal and storage medium | |
CN111246052B (en) | Wide dynamic adjustment method and device, storage medium and electronic device | |
CN113781318A (en) | Image color mapping method and device, terminal equipment and storage medium | |
CN113422956B (en) | Image coding method and device, electronic equipment and storage medium | |
CN111083494A (en) | Video coding method and device and terminal equipment | |
CN114998122A (en) | Low-illumination image enhancement method | |
CN110717864A (en) | Image enhancement method and device, terminal equipment and computer readable medium |
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 | ||
CB02 | Change of applicant information |
Address after: 916, 9th floor, block B, building 9, zone 2, Shenzhen Bay science and technology ecological park, Yuehai street, Nanshan District, Shenzhen City, Guangdong Province 518000 Applicant after: Shenzhen Qixin haoshitong cloud computing Co., Ltd Address before: 518000 916, 9th floor, block B, building 9, zone 2, Shenzhen Bay science and technology ecological park, Yuehai street, Nanshan District, Shenzhen City, Guangdong Province Applicant before: Shenzhen Inpor Cloud Computing Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |