Video noise reduction method and device

Through the video noise reduction method based on multi-frame fusion, the weighted fusion is used to perform weighted fusion, which solves the problem of insufficient noise removal in the prior art, and achieves a higher quality video noise reduction effect.

CN114679553BActive Publication Date: 2025-02-07HUAWEI TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202011549202.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-12-24
Publication Date
2025-02-07
Estimated Expiration
2040-12-24

AI Technical Summary

Technical Problem

The existing method of using video frame time domain correlation to reduce video noise has the problem of insufficient noise removal, resulting in poor video quality.

Method used

A video noise reduction method based on multi-frame fusion is proposed. By cached multiple video frames, multiple pairs of fusion weights are calculated, and multi-frame fusion weights are calculated based on these weights, and weighted fusion is performed to remove noise.

Benefits of technology

This method can more effectively remove noise, improve the display effect of video, avoid the situation where the target video frame weight is too large or too small, and improve the video frame quality after noise reduction.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114679553B_ABST
    Figure CN114679553B_ABST
Patent Text Reader

Abstract

The present application provides a video denoising method and related device based on multi-frame fusion, which is used to perform denoising on multiple cached video frames, wherein the multiple video frames include a target video frame and at least two other video frames. The weight of the target video frame and each other video frame for two-frame fusion is obtained, and then the weight of the target video frame and all other video frames for multi-frame fusion is obtained based on the two-frame fusion weight. The target video frame and all other video frames are subjected to multi-frame fusion denoising based on the multi-frame fusion weight to generate a denoised video frame. Through multi-frame fusion denoising, the noise in the video frame can be removed while maintaining the texture of the video frame, which can effectively improve the video quality.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of image processing, and in particular to a video noise reduction method. Background Art

[0002] Image noise is a random variation in brightness or color information in an image (not present in the object itself), usually a manifestation of electronic noise. It is generally generated by the sensors and circuits of scanners or digital cameras, or by film grain or the inevitable shot noise in ideal photodetectors. Image noise is an undesirable byproduct of the image capture process, which adds errors and extra information to the image.

[0003] Video is composed of multiple continuous video frames, and one video frame is an image, so video denoising includes denoising the images in the video frame. Image denoising refers to the technology of using certain methods to suppress or eliminate noise in the image while maintaining the original texture and details of the image as much as possible to improve the visual quality of the image. The difference between video denoising and single-frame image denoising is that video can use the correlation between video frames in the time domain and / or spatial domain.

[0004] Some methods of image denoising rely on modeling noise, and there are many ways to model noise. A commonly used noise model represents the level of noise corresponding to different pixel intensities under specific parameters (such as sensitivity, exposure time, etc.).

[0005] At present, there is a video denoising method based on the noise model and the temporal correlation between video frames, which uses a two-frame iterative fusion method to denoise the video. First, two frames of images are obtained, where the current frame is the image to be denoised, and the other frame is the previous frame of the current frame, and the previous frame has been denoised. After the weights of the two-frame fusion are calculated using the noise model and the temporal correlation between the two frames of images, the two frames of images are weightedly fused according to the two-frame fusion weights to update the pixel values ​​of the frame to be denoised, and the denoised video frame is obtained. Then, the denoised video frame is used for denoising the next frame of video, and it is iterated in this way.

[0006] Existing methods for video denoising using temporal correlation of video frames have the problem of insufficient noise removal, such as residual patches in some parts, resulting in poor displayed video quality. Summary of the invention

[0007] In view of this, the present application proposes a video denoising method and related device based on multi-frame fusion, which can remove noise more cleanly and improve the display effect of the video while retaining the original texture of the image.

[0008] On the first aspect, the present application provides a video noise reduction method, which can be used in any scenario where video noise reduction is required, such as shooting various short videos, video conferencing, etc. The method comprises: caching a plurality of video frames, wherein the plurality of video frames comprises a target video frame and at least two other video frames, wherein the target video frame is any one of the plurality of video frames; obtaining a plurality of pairs of two-frame fusion weights, wherein a pair of the two-frame fusion weights comprises two weights for weighting a pair of pixel values, wherein the pair of pixel values ​​comprises a first pixel of the target video frame and a corresponding pixel in one of the other video frames having the same position as the first pixel; obtaining multi-frame fusion weights for fusing the target video frame and the at least two other video frames according to the plurality of pairs of two-frame fusion weights, wherein the multi-frame fusion weights comprises a plurality of weights for weighting a group of pixel values, wherein the group of pixel values ​​comprises the first pixel of the target video frame and at least two corresponding pixel in the at least two other video frames having the same position as the first pixel; according to the multi-frame fusion weights, weighting the group of pixel values ​​corresponding to the multi-frame fusion weights to obtain a new pixel value; and generating a denoised target video frame based on the new pixel value.

[0009] The video denoising method provided in the first aspect above first calculates multiple pairs of two-frame fusion weights for respectively fusing the target video frame with all other video frames in the cache by two frames, and then calculates the multi-frame fusion weights for fusing the target video frame with all other video frames in the cache based on the multiple pairs of two-frame fusion weights, and then performs weighted fusion of the multiple video frames in the cache according to the multi-frame fusion weights, so that the weight distribution is more reasonable, avoiding the situation where the weight of the target video frame is too large or too small, thereby improving the quality of the target video frame after denoising.

[0010] In addition, the noise reduction of a pixel point X in the target video frame only involves the information of corresponding pixels in the same position as the pixel point X in multiple video frames, and does not involve the pixel blocks around the pixel point X and / or its corresponding pixel points. That is to say, the video noise reduction method proposed in the present application only involves the temporal correlation between video frames, and does not involve the spatial correlation between video frames, thereby avoiding the extra calculation amount caused by operations such as pixel block matching, improving the efficiency of video noise reduction, and achieving the effect of real-time noise reduction.

[0011] In combination with the video noise reduction method provided in the first aspect, in a possible implementation, obtaining the fusion weight of the two frames includes: obtaining a first pixel value difference, where the first pixel value difference is the pixel value difference between the first pixel point and the corresponding pixel point; obtaining the noise level of the first pixel point; and obtaining the fusion weight of the two frames based on the first pixel value difference, the noise level and a parameter for controlling the degree of fusion.

[0012] In combination with the video noise reduction method provided in the first aspect, in another possible implementation, obtaining the fusion weight of the two frames includes: obtaining a first pixel value difference, the first pixel value difference is the pixel value difference between the first pixel point and the corresponding pixel point; obtaining the noise level of the first pixel point; obtaining multiple second pixel value differences, one of the second pixel value differences is the pixel value difference between two corresponding pixel points of the first pixel point; obtaining the fusion weight of the two frames according to the first pixel value difference, the noise level, the multiple second pixel value differences and the parameters controlling the degree of fusion.

[0013] Under the same noise level, compared with obtaining the two-frame fusion weight based only on the pixel value difference of a pair of pixels themselves, obtaining the two-frame fusion weight based on the above-mentioned maximum pixel value difference can make the weight more biased towards the target video frame. When a pixel value difference greater than the pixel value difference of a pair of pixels themselves appears in the multiple second pixel value differences, it may be caused by a large amplitude of movement in the video or abnormal fluctuations in the pixel values ​​of other video frames. At this time, by using the maximum pixel value difference to increase the weight of the pixel point X in the target video frame itself, it can effectively avoid the introduction of problems such as ghosting or abnormal noise in the noise reduction process.

[0014] In combination with the video noise reduction method provided in any one of the first aspects, in a possible implementation manner, the video noise reduction method further includes: deleting a first frame among the multiple video frames.

[0015] The cached multiple video frames are arranged in time sequence, and the image contents of adjacent frames have a strong correlation. After completing the denoising of the target video frame, when updating the video frame cache, the first frame in the time sequence of the multiple video frames in the cache is deleted. Then, the deleted frame is not the middle frame in the multiple video frames. After deletion, it will not cause discontinuity (or frame skipping) between frames in the cached multiple videos, thus avoiding the problem of poor effect caused by excessive difference in pixel values ​​between frames when continuing the video denoising.

[0016] In a second aspect, the present application provides a video noise reduction method, the method comprising: in response to a user operation, displaying a video frame on a display screen of an electronic device, wherein the video frame comprises a target video frame after noise reduction, and the target video frame after noise reduction is obtained by performing video noise reduction on the target video frame captured by the camera of the electronic device according to the video noise reduction method provided in any one of the above-mentioned first aspects.

[0017] In a possible implementation, the video noise reduction function that can be achieved by the video noise reduction method provided in the first aspect can be directly integrated into the system, and when the user shoots a video, the video noise reduction function is used by default.

[0018] In another possible implementation, when shooting a video, the user can choose whether to use the video noise reduction method provided by the present application to reduce the noise of the video, so as to give the user more autonomy to choose. For example, the user can turn on or off a switch in the system settings or in the camera application indicating the video noise reduction function that can be achieved by the video noise reduction method provided by the first aspect above.

[0019] In a third aspect, the present application provides a video noise reduction device, which includes: a storage module, an acquisition module, and a processing module. The video noise reduction device is configured to execute the video noise reduction method described in any one of the first aspect or the second aspect.

[0020] In a fourth aspect, the present application also provides a video noise reduction device, comprising a memory, a processor, and a program stored in the memory and executable on the processor, wherein when the processor executes the program, it executes the video noise reduction method described in any one of the first aspect or the second aspect.

[0021] In combination with the video noise reduction device provided in the fourth aspect, in a possible implementation, the video noise reduction device also includes: a camera, used to capture video, when the processor executes the program stored in the memory, the processor is used to execute the video noise reduction method described in any one of the first aspect or the second aspect above, so as to reduce noise on the video captured by the camera.

[0022] In a fifth aspect, the present application further provides a computer-readable storage medium, in which a computer program is stored. When the computer program is executed by a processor, the video noise reduction method described in any one of the first aspect or the second aspect is implemented.

[0023] In a sixth aspect, the present application further provides a computer program product, comprising a computer program / instruction, which, when executed by a processor, implements the steps of the video noise reduction method as described in any one of the first aspect or the second aspect above.

[0024] In the seventh aspect, the present application also provides a chip, characterized in that the chip includes a processor and a data interface, and the processor reads instructions and video frames stored in the memory through the data interface to execute the video noise reduction method as described in any one of the first aspect or the second aspect above. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] Figure 1 This is a schematic diagram of an application scenario of a video noise reduction method provided by an embodiment of the present application;

[0026] Figure 2 This is a schematic diagram of an application scenario of a video noise reduction method provided by an embodiment of the present application;

[0027] Figure 3 This is a schematic diagram of an application scenario of a video noise reduction method provided by an embodiment of the present application;

[0028] Figure 4 is a schematic diagram of an application scenario of a video noise reduction method provided in an embodiment of the present application;

[0029] Figure 5 It is a structural diagram of a system architecture provided by an embodiment of the present application;

[0030] Figure 6 It is a structural schematic diagram of an electronic device provided in an embodiment of the present application;

[0031] Figure 7 It is a structural schematic diagram of an electronic device provided in an embodiment of the present application;

[0032] Figure 8 is a flow chart of a video noise reduction method provided in an embodiment of the present application;

[0033] Fig. 9 It is a flowchart of a method for obtaining two-frame fusion weights provided in an embodiment of the present application;

[0034] Fig.10 is a schematic diagram of a noise model provided in an embodiment of the present application;

[0035] Fig.11 It is a flowchart of another method for obtaining two-frame fusion weights provided in an embodiment of the present application;

[0036] Fig.12 It is a flowchart of a method for obtaining multi-frame fusion weights provided in an embodiment of the present application;

[0037] Fig.13 is a set of display interface schematic diagrams provided in an embodiment of the present application;

[0038] Fig.14 is another set of display interface schematic diagrams provided in an embodiment of the present application;

[0039] Fig.15 is another display interface schematic diagram provided in an embodiment of the present application;

[0040] Fig.16 is another display interface schematic diagram provided in an embodiment of the present application;

[0041] Fig.17 is a schematic block diagram of a video noise reduction device provided in an embodiment of the present application;

[0042] Fig.18 It is a schematic block diagram of a video noise reduction device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0043] The following will describe the technical solutions in the embodiments of the present application in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Among them, in the description of the embodiments of the present application, unless otherwise specified, " / " means or, for example, A / B can mean A or B; "and / or" in this article is only a description of the association relationship of the associated objects, indicating that there can be three relationships, for example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. In the description of the embodiments of the present application, unless otherwise specified, "multiple" means two or more. In addition, unless otherwise specified, the terms "first" and "second" are only used for descriptive purposes, and cannot be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Therefore, unless otherwise specified, the features defined as "first" and "second" may explicitly or implicitly include one or more of the features.

[0044] Figure 1 It is a schematic diagram of an application scenario of the video noise reduction method provided in an embodiment of the present application.

[0045] like Figure 1 As shown, the video noise reduction method of the embodiment of the present application can be applied to electronic devices. When recording an object through a camera of an electronic device, due to limitations of hardware and environment, the acquired video may have noise problems such as noise points, patches, ghosting, etc. that affect the visual effect. At this time, the original video without noise reduction collected by the camera in the electronic device can be subjected to noise reduction processing to obtain a video after noise reduction.

[0046] Among them, the above-mentioned electronic device can be mobile or fixed. For example, the electronic device can be a mobile phone with video noise reduction function, a camera, a camcorder, a vehicle, a tablet personal computer (TPC), a media player, a smart TV, a laptop computer (LC), a personal digital assistant (PDA), a personal computer (PC), a smart watch, augmented reality (AR) / virtual reality (VR), a wearable device (WD), a game console, etc. The embodiment of the present application does not limit the specific type of the electronic device.

[0047] The noise reduction process can be based on multi-frame fusion, including: caching multiple video frames; calculating multiple pairs of two-frame fusion weights; calculating the multi-frame fusion weights based on the multiple pairs of two-frame fusion weights; and performing multi-frame fusion noise reduction using the multi-frame fusion weights. The multi-frame fusion noise reduction includes weighting the values ​​of a group of pixels at the same position in multiple video frames corresponding to a group of multi-frame fusion weights to obtain a new pixel value, repeating the above steps to obtain multiple new pixel values, and generating a frame of denoised video frame based on the multiple new pixel values.

[0048] In a possible implementation, the video frames after the fusion and noise reduction of the multiple frames may be subjected to subsequent image processing before being output, wherein the subsequent image processing may include performing image processing such as white balance, color correction, tone mapping, etc. on the video frames after the fusion and noise reduction of the multiple frames.

[0049] Optionally, outputting the noise-reduced image (or video) includes displaying it on a screen of an electronic device and / or saving it to an album of the electronic device.

[0050] In one possible implementation, when using an electronic device to take pictures, the user can choose whether to use the video noise reduction method provided in the embodiment of the present application. For example, the user can choose to turn on / off professional recording and other options in the system settings, which include the video noise reduction method provided in the embodiment of the present application. Alternatively, the user can operate in the shooting interface of the camera application to decide whether to use the video noise reduction method provided in the embodiment of the present application.

[0051] It should be noted that Figure 1 The expansion, limitation, explanation and description of the video noise reduction method in the relevant embodiments are also applicable to the following Figures 2 to 9 , Figure 11 to Figure 12 The expansion, limitation, explanation and description of the video noise reduction method in the related embodiments will not be repeated here.

[0052] Combine the following Figures 2 to 4 The application of the video noise reduction method provided in the embodiments of the present application in three specific scenarios is introduced.

[0053] In one embodiment, Figure 2 As shown, the video noise reduction method of the embodiment of the present application can be applied to the shooting of electronic devices (e.g., mobile phones). For example, when using electronic devices to shoot micro-recording (vlog), small videos, event sites, etc., the video noise reduction method provided by the embodiment of the present application can be adopted. Through the video noise reduction method of the embodiment of the present application, the original video frames with poor quality obtained can be subjected to noise reduction processing based on multi-frame fusion to obtain video frames with improved visual quality, thereby outputting high-quality videos and improving user experience.

[0054] In another embodiment, Figure 3 As shown, the video denoising method of the embodiment of the present application can be applied to autonomous driving scenarios. For example, it can be applied to the navigation system of an autonomous driving vehicle. The video denoising method provided by the embodiment of the present application can enable the autonomous driving vehicle to obtain a clearer road image (or road video) by performing denoising processing based on multi-frame fusion on the acquired original road image (or original road video) with low image quality during the navigation process of the road, thereby improving the safety of the autonomous driving vehicle.

[0055] In another embodiment, Figure 4 As shown, the video denoising method provided in the embodiment of the present application can be applied to video surveillance scenarios. For example, the original images (or original videos) collected by monitoring equipment in public places are often affected by factors such as weather and distance, and there are problems such as blurred images and low image quality. The video denoising method of the present application can be used to perform multi-frame fusion denoising processing on the collected original images (or original videos) to obtain a denoised image (or video); further, important information such as license plate numbers and clear faces can be restored based on the processed street view images (or videos), providing important clues for public security personnel to solve cases.

[0056] Combine the following Figure 5 A system architecture 100 provided in an embodiment of the present application is introduced.

[0057] The system architecture 100 includes an electronic device 120 and an execution device 110, wherein the electronic device 120 can interact with the execution device 110 through a communication network of any communication mechanism / communication standard, and the communication network can be a wide area network, a local area network, a point-to-point connection, etc., or any combination thereof.

[0058] In a possible implementation manner, the execution device 110 is implemented by one or more servers.

[0059] Optionally, the execution device 110 may be used in conjunction with other computing devices, such as data storage devices, routers, load balancers, etc. The execution device 110 may be arranged at one physical site, or distributed at multiple physical sites.

[0060] It should be noted that the above-mentioned execution device 110 can also be called a cloud device, and in this case the execution device 110 can be deployed in the cloud.

[0061] Specifically, the execution device 110 can perform the following process: cache multiple video frames, calculate multiple pairs of two-frame fusion weights, and calculate multi-frame fusion weights based on the multiple pairs of two-frame fusion weights; according to the multi-frame fusion weights, perform weighted fusion on the multiple video frames to obtain noise-reduced video frames.

[0062] Figure 6 FIG. 1 shows an exemplary structural diagram of the electronic device 120. Figure 6 The electronic device 120 includes: an application processor 1201, a memory 1202, a wireless communication module 1203, a graphics processing unit (GPU) 1204, an input / output (I / O) device 1205 and other components. Those skilled in the art can understand that Figure 6 The hardware structure shown in the figure does not constitute a limitation on the electronic device 120. The electronic device 120 may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.

[0063] Combine the following Figure 6 The various components of the electronic device 120 are described in detail:

[0064] The application processor 1201 is the control center of the electronic device 120, and uses various interfaces and buses to connect various components of the electronic device 120. In some embodiments, the application processor 1201 may include one or more processing modules.

[0065] The memory 1202 stores computer programs such as Figure 6 The operating system 1222 and application 1221 shown. The application processor 1201 is configured to execute the computer program in the memory 1202, so as to implement the functions defined by the computer program, for example, the application processor 1201 executes the operating system 1222 to implement various functions of the operating system on the electronic device 120. The memory 1202 also stores other data besides the computer program, such as data generated during the operation of the operating system 1222 and the application 1221. The memory 1202 is a non-volatile storage medium, generally including internal memory and external memory. The internal memory includes but is not limited to random access memory (RAM), read-only memory (ROM), or cache, etc. The external memory includes but is not limited to flash memory, hard disk, optical disk, universal serial bus (USB) disk, etc. The computer program is usually stored in the external memory, and the processor loads the program from the external memory to the internal memory before executing the computer program.

[0066] The memory 1202 may be independent and connected to the application processor 1201 via a bus; the memory 1202 may also be integrated with the application processor 1201 into a chip subsystem.

[0067] The wireless communication module 1203 is used to provide wireless communication solutions including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR), etc., applied to the electronic device 120. The wireless communication module 1203 can be one or more devices integrating at least one communication processing module. The wireless communication module 1203 receives electromagnetic waves via an antenna, demodulates and filters the electromagnetic wave signals, and sends the processed signals to the application processor 1201. The wireless communication module 1203 can also receive the signal to be sent from the application processor 1201, modulate the frequency, amplify it, and convert it into electromagnetic waves for radiation through the antenna.

[0068] GPU 1204: performs drawing and rendering calculations on image data to generate images to be displayed. Also known as a display core or visual processor, it is a microprocessor that performs image operations and may include 2D (Dimension) and / or 3D processing functions. The electronic device 120 may include one or more GPUs that execute program instructions to generate or change display information.

[0069] The input / output device 1205 includes but is not limited to: a display 1251 , a touch screen 1253 , and an audio circuit 1255 .

[0070] The touch screen 1253 can collect touch events of the user of the electronic device 120 on or near it (for example, the user uses a finger, a stylus or any other suitable object to operate on or near the touch screen 1253), and send the collected touch events to other devices (for example, the application processor 1201). The operation of the user near the touch screen 1253 can be called floating touch; through floating touch, the user can select, move or drag a target (for example, an icon, etc.) without directly touching the touch screen 1253. In addition, the touch screen 1253 can be implemented by various types such as resistive, capacitive, infrared and surface acoustic wave.

[0071] The display (also called a display screen) 1251 is used to display information input by the user or information presented to the user. The display can be configured in the form of a liquid crystal display (LCD), an organic light emitting diode (OLED), etc. The touch screen 1253 can cover the display 1251. When the touch screen 1253 detects a touch event, it is transmitted to the application processor 1201 to determine the type of the touch event. Then, the application processor 1201 can provide corresponding visual output on the display 1251 according to the type of the touch event. Although in Figure 6 In the embodiment, the touch screen 1253 and the display 1251 are two independent components to realize the input and output functions of the electronic device 120, but in some embodiments, the touch screen 1253 and the display 1251 can be integrated to realize the input and output functions of the electronic device 120. In addition, the touch screen 1253 and the display 1251 can be configured in the form of a full panel on the front of the electronic device 120 to realize a frameless structure.

[0072] The audio circuit 1255, the speaker 1256, and the microphone 1257 can provide an audio interface between the user and the electronic device 120. The audio circuit 1255 can convert the received audio data into an electrical signal, transmit it to the speaker 1256, and the speaker 1256 converts it into a sound signal for output; on the other hand, the microphone 1257 converts the collected sound signal into an electrical signal, which is received by the audio circuit 1255 and converted into audio data, and then the audio data is sent to, for example, another electronic device through the modem processor and the radio frequency module, or the audio data is output to the memory 1202 for further processing.

[0073] Optionally, the electronic device 120 may further include a microcontroller unit (MCU) 1206, which is a coprocessor for acquiring and processing data from the sensor 1261. The processing power and power consumption of the MCU 1206 are less than those of the application processor 1201, but it has the characteristic of "always on", and can continuously collect and process sensor data when the application processor 1201 is in sleep mode, and ensure the normal operation of the sensor with extremely low power consumption. In one embodiment, the MCU 1206 may be a sensor hub chip. The sensor 1261 may include a light sensor and a gyroscope sensor. Specifically, the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor may adjust the brightness of the display 1251 according to the brightness of the ambient light, and the proximity sensor may turn off the power of the display screen when the electronic device 120 moves to the ear. The gyroscope sensor may be used to determine the motion posture of the electronic device 120. In some embodiments, the angular velocity of the electronic device 120 around three axes (i.e., x, y, and z axes) may be determined by a gyroscope sensor. The angular velocity information obtained by the gyroscope sensor is converted into a rotation matrix that can describe the rotation of the object, which can be used to align the image. The gyroscope sensor can also be used for anti-shake shooting. For example, when the shutter is pressed, the gyroscope sensor detects the angle of the electronic device 120 shaking, calculates the distance that the lens module needs to compensate based on the angle, and allows the lens to offset the shaking of the electronic device 120 through reverse movement to achieve anti-shake. Gyroscope sensors can also be used for navigation and somatosensory game scenes. Sensor 1261 can also include other sensors such as accelerometers, barometers, hygrometers, thermometers, infrared sensors, etc., which will not be repeated here. MCU 1206 and sensor 1261 can be integrated into the same chip, or they can be separate components connected through a bus.

[0074] Optionally, the electronic device 120 may further include an image signal processor (ISP) 1207. The ISP 1207 is connected to the camera 1271 to capture images and implement image processing (such as exposure control, white balance, color calibration, or noise removal) to generate image data, and may include a processor core that performs necessary software processing or pure hardware implementation.

[0075] Optionally, the electronic device 120 may further include a mobile communication module 1208. The mobile communication module 1208 may provide solutions for wireless communications including 2G / 3G / 4G / 5G applied to the electronic device 120. The mobile communication module 1208 may include at least one filter, a switch, a power amplifier, a low noise amplifier (LNA), etc. The mobile communication module 1208 may receive electromagnetic waves from an antenna, filter, amplify, and process the received electromagnetic waves, and transmit them to a modulation and demodulation processor for demodulation. The mobile communication module 1208 may also amplify the signal modulated by the modulation and demodulation processor, and convert it into electromagnetic waves for radiation through the antenna. In some embodiments, at least some of the functional modules of the mobile communication module 1208 may be arranged in the application processor 1201. In some embodiments, at least some of the functional modules of the mobile communication module 1208 may be arranged in the same device as at least some of the modules of the application processor 1201.

[0076] Furthermore, the operating system 1222 installed in the electronic device 120 may be Or other operating systems, the embodiments of the present application do not impose any limitations on this.

[0077] To carry For example, the electronic device 120 of the operating system Figure 7 As shown, the electronic device 120 can be logically divided into a hardware layer 21, an operating system 22, and an application layer 23. The hardware layer 21 includes the application processor 1201, the memory 1202, the wireless communication module 1203, the graphics processor 1204, the sensor 1261, the camera 1271 and other hardware resources as described above. The application layer 23 includes one or more application programs, such as the application 231, which can be any type of application program such as a social application, an e-commerce application, a browser, etc. The operating system 22 is a software middleware between the hardware layer 21 and the application layer 23, and is a computer program that manages and controls hardware and software resources.

[0078] In one embodiment, the operating system 22 includes a kernel 221, a hardware abstraction layer (HAL) 222, libraries and runtime 223, a framework 224, and a system application 225. The kernel 221 is used to provide underlying system components and services, such as power management, memory management, thread management, hardware drivers, etc.; hardware drivers include Wi-Fi drivers, sensor drivers, camera drivers, etc. The hardware abstraction layer 222 is an encapsulation of the kernel driver, providing an interface to the framework 224 and shielding the low-level implementation details. The hardware abstraction layer 222 runs in the user space, while the kernel driver runs in the kernel space.

[0079] The library and runtime 223 is also called the runtime library, which provides the required library files and execution environment for the executable program at runtime. In one embodiment, the library and runtime 223 includes Android Runtime (ART) 2232, library 2231, etc. ART 2232 is a virtual machine or virtual machine instance that can convert the bytecode of the application into machine code. Library 2231 is a program library that provides support for the executable program at runtime, including a browser engine (such as webkit), a script execution engine (such as JavaScript engine), a graphics processing engine, etc.

[0080] The framework 224 is used to provide various basic common components and services for the application programs in the application layer 23, such as resource management, notification management, etc. In one embodiment, the framework 224 includes a resource manager 2241, a content provider 2242, a notification manager 2243, and the like.

[0081] System applications 225 are some native applications integrated into the operating system 22. In one embodiment, system applications 225 include applications such as email 2251, calendar 2252, and camera 2253. For example, in one embodiment, if a third-party application developed by a developer needs to shoot a video, the developer does not need to build this function by himself, and can call the camera 2253 to shoot a video.

[0082] Optionally, the camera 2253 integrates program code for implementing the multi-frame fusion noise reduction method provided in the embodiment of the present application, which can improve the visual effect of the video shot by the third-party application. It should be noted that the video noise reduction method (i.e., multi-frame fusion noise reduction) provided in the embodiment of the present application is also applicable to the above Figures 1 to 6The expansion, limitation, explanation and description of the video noise reduction method in the relevant embodiments are not repeated here. The functions of each component of the operating system 22 described above can be implemented by the application processor 1201 executing the program stored in the memory 1202.

[0083] Those skilled in the art will appreciate that the electronic device 120 may include Figure 6 or Figure 7 Fewer or more components than shown, Figure 6 or Figure 7 The electronic device shown only includes components that are more relevant to the multiple implementations disclosed in the embodiments of the present application.

[0084] In a possible implementation, the video noise reduction method of the embodiment of the present application may be executed by the electronic device 120. For example, when a user uses the electronic device 120 to shoot a video, the video noise reduction method provided by the embodiment of the present application is used to perform video noise reduction locally on the electronic device 120.

[0085] In another possible implementation, the video noise reduction method of the embodiment of the present application may be an offline method executed in the cloud, for example, the video noise reduction method of the embodiment of the present application may be executed by the above-mentioned execution device 110. For example, the user may operate the electronic device 120 to interact with the execution device 110, and the electronic device 120 transmits the captured video to the execution device 110, and the execution device 110 uses the video noise reduction method provided in the embodiment of the present application to reduce the noise of the video.

[0086] The embodiments of the present application provide a video noise reduction method and a video noise reduction device, which first calculates the multiple pairs of two-frame fusion weights for fusing the target video frame with all other video frames in the cache, and then calculates the multi-frame fusion weights for fusing the target video frame with all other video frames in the cache based on the multiple pairs of two-frame fusion weights, and then performs weighted fusion on the multiple video frames in the cache according to the multi-frame fusion weights, so that the weight distribution is more reasonable, avoiding the situation where the weight of the target video frame is too large or too small, thereby improving the quality of the target video frame after noise reduction. In addition, in the scheme of the present application, the previously noise-reduced video frame is not used when the subsequent video frame is noise-reduced, which effectively avoids the appearance of ghosting.

[0087] Combine the following Figures 8 to 16 The video noise reduction method provided in the embodiment of the present application is described in detail.

[0088] Figure 8 FIG. 4 is a schematic flow chart of a video noise reduction method 400 provided in an embodiment of the present application. The method may be performed by a device having image processing capabilities. For example, the method may be performed by Figure 5The execution device 110 in the method 400 may execute the method 401 to the step 405:

[0089] 401: Cache multiple video frames, including a target video frame and at least two other video frames. The target video frame is a frame to be denoised, and may be any one of the multiple video frames.

[0090] 402: Obtain multiple pairs of two-frame fusion weights, where a pair of two-frame fusion weights includes two weights for weighting the values ​​of a pair of pixel points.

[0091] 403: Obtain multi-frame fusion weights for fusing the target video frame and at least two other video frames according to the multiple pairs of two-frame fusion weights, wherein a set of multi-frame fusion weights includes a plurality of weights for weighting values ​​of a set of pixel points.

[0092] 404: According to a set of multi-frame fusion weights, weight the values ​​of a set of corresponding pixels to obtain a new pixel value.

[0093] 405: Generate a target video frame after noise reduction based on the new pixel values.

[0094] The following takes the execution of method 400 in electronic device 120 as an example to describe these steps in detail.

[0095] 401: Cache multiple video frames, including a target video frame and at least two other video frames. The target video frame is to be denoised, and may be any one of the multiple video frames.

[0096] In one embodiment, the plurality of video frames are buffered in time sequence.

[0097] In one embodiment, the cached multiple video frames can be the original images captured by the camera, that is, the original images that have not been processed by ISP1207, or they can be images generated after image preprocessing (such as exposure control, white balance, color calibration or noise removal, etc.) by ISP.

[0098] It should be noted that the cached multiple video frames have not been processed by the video noise reduction method provided in the embodiment of the present application.

[0099] It should be noted that the essence of denoising an image is to change the pixel values ​​of some or all pixels in the image so that all pixels together generate a clearer image without noise and ghosting problems. This application takes any pixel point X of the target video frame as an example to describe the video denoising method provided in the embodiment of the present application, including pixel-level processing steps, namely steps 402 to 404 in method 400.

[0100] For any pixel point X in the target video frame, its relative position in the target video frame can be identified by two-dimensional coordinates or the like, and the "position" mentioned in the embodiments of the present application refers to the relative position of the pixel point in the video frame in which it is located. If the position of any pixel point Y in another video frame is the same as that of pixel point X, then pixel point Y is called a corresponding pixel point of pixel point X.

[0101] 402: Obtain multiple pairs of two-frame fusion weights, where a pair of two-frame fusion weights includes two weights for weighting the values ​​of a pair of pixel points.

[0102] For example, the pair of pixels includes a pixel X in the target video frame and a corresponding pixel Y in another video frame.

[0103] It should be understood that the pair of two-frame fusion weights mentioned in the present application corresponds to a pair of pixel points, that is, a pair of weights can be used to weight the pixel values ​​of a pair of pixel points to obtain a new pixel value.

[0104] For example, for a pixel point X in the target video frame, it is necessary to obtain multiple pairs of two-frame fusion weights for weighted fusion of X with corresponding pixels in all other video frames in the cache. If there are N-1 other video frames in the cache, for pixel point X, it is necessary to obtain N-1 pairs of two-frame fusion weights.

[0105] If the target video frame has M pixels, and the noise reduction method provided in the embodiment of the present application is used to reduce the noise of these M pixels, then a total of M*(N-1) fusion weights for the two frames need to be obtained, where * represents a multiplication operation.

[0106] In a possible implementation, before obtaining the fusion weights of the two frames, all other video frames may be first aligned with the target video frame (or image registration). Image alignment refers to twisting and rotating an image to align it with the content of another image.

[0107] Exemplarily, the above-mentioned image alignment can be performed based on at least one of the angular velocity information obtained by the gyroscope sensor, the homography matrix calculated by the feature points, and the optical flow information.

[0108] In a possible implementation, in order to avoid fluctuations in fusion weights caused by intra-frame noise and improve noise reduction effects, before obtaining fusion weights of two frames, the video frames may be smoothed and filtered.

[0109] Exemplarily, the above-mentioned smoothing filtering can adopt one of the filtering methods such as mean filtering, Gaussian filtering, bilateral filtering, median filtering, guided filtering, box filtering, etc., or the superposition of at least two filtering methods.

[0110] 403: According to the multiple pairs of two-frame fusion weights, obtain a set of multi-frame fusion weights for fusing the target video frame and at least two other video frames, wherein the set of multi-frame fusion weights includes a plurality of weights for weighting values ​​of a set of pixel points.

[0111] For example, the group of pixel points includes a pixel point X of the target video frame and at least two pixel points corresponding to the pixel point X in the at least two other video frames.

[0112] Similarly, a set of multi-frame fusion weights mentioned in the present application corresponds to a set of pixel points, that is, a set of weights can be used to weight the pixel values ​​of a set of pixel points to obtain a new pixel value.

[0113] For a group of pixels including pixel X, multiple pairs of two-frame fusion weights for fusing pixel X with multiple corresponding pixels in multiple other video frames are obtained in step 402. Among them, each pair of two-frame fusion weights has a weight corresponding to pixel X, and another weight corresponding to the corresponding pixel in other video frames. That is, pixel X has multiple two-frame fusion weights, and each corresponding pixel of pixel X has a two-frame fusion weight. According to the above multiple pairs of two-frame fusion weights, a weight for pixel X to participate in multi-frame fusion and a corresponding weight for each corresponding pixel of pixel X to participate in multi-frame fusion are obtained.

[0114] 404: According to a set of multi-frame fusion weights, weight the values ​​of a set of corresponding pixels to obtain a new pixel value.

[0115] For example, according to a set of multi-frame fusion weights corresponding to a group of pixels including pixel X, the pixel values ​​of pixel X and all its corresponding pixels are weighted to obtain a new pixel value. This new pixel value fuses information of multiple pixels at the same position as pixel X in multiple video frames, and can effectively remove noise that may exist in pixel X.

[0116] It should be understood that the noise reduction of a pixel point X in the target video frame only involves the information of the pixel points at the same position as the pixel point X in multiple video frames, and does not involve the pixel blocks around the pixel point X and / or its corresponding pixel points. That is to say, the video noise reduction method proposed in the present application only involves the temporal correlation between video frames, and does not involve the spatial correlation between video frames. It avoids the extra calculation amount caused by operations such as pixel block matching, improves the efficiency of video noise reduction, and can achieve the effect of real-time noise reduction.

[0117] 405: Generate a target video frame after noise reduction based on the new pixel values.

[0118] After completing the weighted fusion of steps 402 to 404 for all or part of the pixels of the target video frame, a denoised target video frame can be generated based on these new pixel values. The pixels in the denoised target video frame fuse the information of the corresponding pixels in the original target video frame and multiple previous and / or subsequent video frames, so that the image presented by all pixels as a whole is clearer.

[0119] In one possible implementation, the generated denoised target video frame does not directly replace the original target video frame. The original target video frame remains in the cache. When the next frame of the target video frame is denoised, the previously denoised target video frame is not used. This non-iterative multi-frame fusion denoising method makes the distribution of weights in multiple video frames more reasonable and the noise removal is cleaner. At the same time, it alleviates the ghosting problem caused by the excessive weight of the previously denoised video frame.

[0120] The target video frame after noise reduction can be directly output or can be output after subsequent image processing; wherein, the subsequent image processing can include image processing such as white balance, color correction, tone mapping, etc. on the target video frame after noise reduction. The above-mentioned output of the target video frame after noise reduction can be output to the display 1251 of the electronic device 120 and / or the memory 1202, or can be transmitted to other devices through the wireless communication module 1203 and / or the mobile communication module 1208.

[0121] In the process of video denoising, the frames in the video need to be denoised one by one in sequence. After the current target video frame completes denoising, its next frame will become the new target denoising frame.

[0122] Optionally, according to the change of the target video frame, the cached multiple video frames used for denoising the target video frame are also updated accordingly.

[0123] In a possible implementation manner, the cached multiple video frames may be updated according to step 406 and step 407 .

[0124] 406: Delete the first frame in the temporal sequence among the multiple cached video frames.

[0125] The cached multiple video frames are arranged in time sequence, and the image contents of adjacent frames have a strong correlation. After completing the denoising of the target video frame, when updating the video frame cache, the first frame in the time sequence of the multiple video frames in the cache is deleted. Then, the deleted frame is not the middle frame in the multiple video frames. After deletion, it will not cause discontinuity (or frame skipping) between frames in the cached multiple videos, thus avoiding the problem of poor effect caused by excessive difference in pixel values ​​between frames when continuing the video denoising.

[0126] 407: Get a frame of video without noise reduction and add it to the end of the cached multiple video frames.

[0127] In a possible implementation, the next frame in the time sequence of the last frame in the cached multiple video frames is obtained from the original video and added to the end of the cached multiple video frames. After the noise reduction of the target video frame is completed, the next frame in the time sequence becomes the new target video frame, and the next video frame is obtained from the original video and added to the cache. The next video frame is the next frame in the time sequence of the last video frame in the existing cache, and is placed behind all the existing video frames in the cache, which ensures that after the cache is updated, the multiple video frames in the cache are still arranged in time sequence and there is no frame skipping, thereby ensuring the noise reduction effect of the new target video frame.

[0128] In one embodiment, Fig. 9 As shown, the specific process of obtaining a pair of two-frame fusion weights in step 402 includes the following steps:

[0129] 421: Obtain a pixel value difference between a pair of pixel points, wherein one pixel point is located in a target video frame and the other pixel point is located in another video frame.

[0130] For example, a pixel point located in the target video frame is pixel point X, and another pixel point located in another video frame is pixel point X located in a corresponding pixel point Y of another video frame.

[0131] The pixel value difference may be an absolute value of the difference between the pixel values ​​of two pixels.

[0132] 422: Obtain the noise level of a pixel located in the target video frame.

[0133] The more serious the noise of a pixel to be denoised, the less accurate the pixel value of the pixel is, and the weight of the pixel value of the pixel itself in multi-frame fusion denoising needs to be reduced.

[0134] In a possible implementation, noise is modeled and the noise level of a pixel is obtained using the noise model. For example, a noise model indicates the level of noise corresponding to different pixel intensities under specific parameters (such as sensitivity, exposure time, etc.).

[0135] Fig.10 A schematic diagram of the noise model under a certain parameter combination is given. The horizontal axis represents the intensity of the pixel (the intensity of the pixel, also called the pixel value), the vertical axis represents the level of noise, and a point on the curve represents the noise level corresponding to a pixel value.

[0136] In a possible implementation, the noise model is calibrated in advance and stored in a memory. For example, the calibrated noise model can be stored in the memory 1202 of the electronic device 120, and the noise level of the pixel point X to be denoised is loaded from the memory 1202 when performing video noise reduction, that is, the noise level corresponding to the pixel value of the pixel point X in the noise model.

[0137] In a possible implementation, the noise model is represented by a table noise_table

[256] having 256 entries, each entry representing a corresponding pixel value, such as noise_table[0] represents the noise level when the pixel value is 0, noise_table

[255] represents the noise level when the pixel value is 255, and noise_table

[100] represents the noise level when the pixel value is 100. The above table can be implemented using any data structure that is used to store and process a large amount of data and access and process the elements therein through index subscripts, such as arrays, linked lists, lists, etc.

[0138] 423: Calculate two weights for weighted fusion of the pixel values ​​of the pair of pixels according to the pixel value difference and the noise level.

[0139] In one possible implementation, a weight of pixel point X in a pair of pixel points located in the target video frame can be calculated first. Since the sum of these two weights is 1, the weight of the corresponding pixel point of pixel point X in the pair of pixel points can be obtained as 1 minus the weight of pixel point X.

[0140] In a possible implementation, the higher the noise level of pixel point X, the smaller the weight of pixel point X, and the greater the difference in pixel value between pixel point X and its corresponding pixel point, the greater the weight of pixel point X.

[0141] In a possible implementation, a parameter for controlling the fusion degree of the target video frame may be introduced to calculate the weight. The parameter may be a fixed constant or a parameter that can be adaptively adjusted according to factors such as the image quality of the target video frame or the noise level of pixel X.

[0142] For example, the weight of a pixel X in a pair of pixels can be obtained by the following formula:

[0143]

[0144] Among them, W t represents the weight of pixel X, MIN represents the minimum value, which can ensure that the weight of pixel X is not greater than 1.0, k represents the parameter controlling the degree of fusion, diff represents the difference in pixel value between pixel X and its corresponding pixel, and nl represents the noise level of pixel X.

[0145] In another embodiment, Fig.11 As shown, when obtaining a pair of two-frame fusion weights in step 402, the information of all other video frames can be combined. The specific process may include Fig. 9 Same steps 421 and 422, and new steps 424 and 425.

[0146] Steps 421 and 422 are Fig. 9 The same as shown, no further description is given here, and the new steps 424 and 425 are introduced in detail below.

[0147] 424: Obtain multiple second pixel value differences, where one second pixel value difference is a pixel value difference between two pixel points located in two other video frames.

[0148] The above two pixel points are the corresponding pixel points of the pixel point X in other video frames.

[0149] In a possible implementation manner, pixel value differences between at least two pixel points corresponding to the pixel point X in all other video frames are obtained.

[0150] 425: Calculating two weights for weighted fusion of the pixel values ​​of the pair of pixels according to the pixel value difference, the noise level and the plurality of second pixel value differences, wherein the pair of pixels is the same as the previous pixel value difference. Fig. 9 The definition in the embodiment corresponding to step 421 is the same.

[0151] In a possible implementation, the pixel value difference between the above pair of pixels and the maximum pixel value difference among the multiple second pixel value differences can be obtained first, and then the two-frame fusion weight can be obtained based on the maximum pixel value difference. Under the same noise level, compared with obtaining the two-frame fusion weight based only on the pixel value difference of a pair of pixels themselves, obtaining the two-frame fusion weight based on the above maximum pixel value difference can make the weight more biased towards the target video frame. When a pixel value difference greater than the pixel value difference of a pair of pixels themselves appears in the multiple second pixel value differences, it may be caused by a large amplitude of movement in the video or abnormal fluctuations in the pixel values ​​of other video frames. At this time, by using the maximum pixel value difference to increase the weight of the pixel point X in the target video frame itself, it can effectively avoid the introduction of problems such as ghosting or abnormal noise in the noise reduction process.

[0152] It should be understood that in each embodiment of the present application, the “second pixel value difference” is only used to refer to different pixel value difference objects, and does not mean that there are other limitations on the referred object.

[0153] In a possible implementation, the fusion degree of the target video frame may be controlled by a parameter, which may be a fixed constant or a parameter that can be adaptively adjusted according to factors such as the image quality of the target video frame or the noise level of pixel X.

[0154] In one embodiment, the weight of pixel point X can be obtained by the following formula:

[0155]

[0156] Among them, W t Represents the weight of pixel X, MIN represents the minimum value, which can ensure that the weight of pixel X is not greater than 1.0, k represents the parameter controlling the degree of fusion, max_diff represents the maximum pixel value difference mentioned above, and nl represents the noise level of pixel X.

[0157] It can be seen that the higher the noise level of pixel X, the smaller the weight of pixel X, and the larger the maximum pixel value difference, the larger the weight of pixel X. On the one hand, when the noise level of pixel X is high, the above method can reduce the influence of the noise of pixel X itself by reducing the weight of pixel X; on the other hand, when there is a large difference in pixel values ​​in all video frames, the above method can increase the weight of pixel X to reduce the influence of abnormal pixel values ​​that may appear in other video frames on the noise reduction effect, and can also alleviate the ghosting problem caused by large movements during noise reduction.

[0158] After obtaining the weight of pixel point X, since the sum of this pair of weights is 1, the weight of the other pixel point is the difference obtained by subtracting the weight of pixel point X from 1.

[0159] In one possible implementation, referring to Fig.12 The specific process of obtaining a set of multi-frame fusion weights in step 403 may include the following steps:

[0160] 431: Obtain a multi-frame fusion weight of a pixel in a target video frame according to multiple pairs of two-frame fusion weights.

[0161] In a possible implementation, the multi-frame fusion weight of a pixel point X located in the target video frame may be a maximum value / minimum value / average value of multiple two-frame fusion weights of the pixel point.

[0162] In a possible implementation, the multi-frame fusion weight of a pixel point X located in the target video frame may be a weighted sum of multiple two-frame fusion weights of the pixel point.

[0163] 432: Obtain multi-frame fusion weights of at least two other pixels according to the multiple pairs of two-frame fusion weights and the multi-frame fusion weight of the one pixel, where the one pixel and the at least two other pixels together constitute a group of pixels.

[0164] In one embodiment, the multi-frame fusion weight of the i-th corresponding pixel point of the pixel point X can be obtained by the following formula:

[0165]

[0166] Among them, W i W represents the multi-frame fusion weight of the ith corresponding pixel of pixel X, where the ith corresponding pixel is located in the ith other video frame; m W represents the weight of multi-frame fusion of pixel point X; ti is the i-th two-frame fusion weight of pixel X, which can be used to fuse pixel X with its i-th corresponding pixel for two frames.

[0167] It should be understood that the obtained set of multi-frame fusion weights of a set of pixel points needs to be normalized.

[0168] In a possible implementation, the video noise reduction function that can be achieved by the video noise reduction method provided in the first aspect can be directly integrated into the system, and when the user shoots a video, the video noise reduction function is used by default.

[0169] In another possible implementation, when shooting a video, the user can choose whether to use the video noise reduction method provided by the present application to reduce the noise of the video, so as to give the user more autonomy to choose. For example, the user can turn on or off a switch in the system settings or in the camera application indicating the video noise reduction function that can be achieved by the video noise reduction method provided by the first aspect above.

[0170] Take the mobile phone as an example below. Figures 13 to 16 , further describing the video noise reduction method provided by the embodiment of the present application from the perspective of the user operation interface. It should be understood that Figures 13 to 16 The description of the embodiments and their corresponding embodiments does not constitute any limitation to the electronic device 120 .

[0171] like Fig.13 (a) shows a graphical user interface (GUI) of a mobile phone, which is a desktop 910 of the mobile phone. When a user clicks an icon 920 of a camera application (application, APP) on the desktop 910, in response to the user operation, the camera application is started and a display is shown as follows: Fig.13 The shooting interface 930 shown in (b) .

[0172] In one embodiment, the shooting interface 930 may include a viewfinder 940; in the preview state, the preview image may be displayed in real time in the viewfinder 940; the shooting interface may also include a control 950 for indicating a recording video mode, and other shooting controls.

[0173] It should be noted that in the embodiment of the present application, the image in the viewfinder 940 can be a color image or a grayscale image, and the color of the images in the drawings of the present application does not constitute any limitation to the present application.

[0174] In a possible implementation, the user's shooting behavior includes the user turning on a camera; in response to the operation, a shooting interface 930 is displayed on the display screen.

[0175] For example, after the mobile phone detects that the user clicks the icon 920 of the camera application, the camera application can be started and the shooting interface 930 can be displayed. The shooting interface can include a viewfinder 940. It is understood that the size of the viewfinder can be different in the photo mode and the video mode. For example, in the video mode, the viewfinder can be the entire display screen. In the preview state, that is, before the user turns on the camera and does not press the photo / video button, the preview image can be displayed in real time in the viewfinder.

[0176] In one example, referring to Fig.14 (a), the shooting interface 930 includes a shooting option 960. After the mobile phone detects that the user clicks the shooting option 960, see Fig.14 (b) The mobile phone displays the shooting mode interface. After the mobile phone detects that the user clicks the mode 961 indicating professional video recording on the shooting mode interface, the mobile phone enters the professional video recording mode. When recording a video in the professional video recording mode, the mobile phone can use the above Figure 8The method described in the related embodiments performs multi-frame fusion noise reduction processing on the original video frames collected by the camera to improve the visual effect of the recorded video. It should be understood that the above professional video recording mode can also include other image processing operations.

[0177] After the phone enters professional video recording mode, the user can click Fig.15 The shooting button 970 shown in the figure instructs the mobile phone to start recording a video. In response to the above-mentioned user's operation of instructing shooting, the mobile phone starts recording a video and performs real-time multi-frame fusion noise reduction processing on the recorded video.

[0178] It should be understood that the operation of the user for instructing the shooting behavior may include pressing the shooting button in the camera application of the mobile phone, or the user instructing the mobile phone to shoot through voice, or the user instructing the mobile phone to shoot through a shortcut key, or other operations of the user instructing the mobile phone to shoot. The above is for example only and does not limit the present application in any way.

[0179] In another example, the mobile phone can provide a video noise reduction mode, for example, by displaying an operation control in the interface of a camera or other application, and in response to a specific operation of the control by the user, the video noise reduction mode is turned on. After the video noise reduction mode is turned on, the mobile phone can use the above Figure 8 The method described in the related embodiment performs multi-frame fusion noise reduction processing on the original video frames captured by the camera or received from other devices to improve the visual effect of the video.

[0180] In one possible implementation, Fig.16 As shown, in response to a user-instructed shooting operation, a video frame is displayed on the display screen of the mobile phone, wherein the video frame is obtained based on a denoised video frame, and the denoised video frame is obtained by performing multi-frame fusion and denoising on the video frame captured by the camera of the mobile phone.

[0181] The displayed video frame may refer to a standard full-color image obtained by performing subsequent image processing on the video frames after multi-frame fusion and noise reduction, wherein the subsequent image processing may include but is not limited to: performing image processing such as white balance, color correction, tone mapping, etc. on the video frames after multi-frame fusion and noise reduction.

[0182] In a possible implementation, the multi-frame fusion noise reduction of the video frames includes caching a plurality of video frames arranged in time sequence, wherein the plurality of target video frames and at least two other video frames are included, the target video frame is a frame to be denoised, and may be any one of the plurality of video frames; obtaining a plurality of pairs of two-frame fusion weights, wherein a pair of two-frame fusion weights includes two weights for weighting a pair of pixel values, wherein the pair of pixel values ​​includes a pixel of a target video frame and a pixel in one of the other video frames having the same position as the pixel; obtaining a set of multi-frame fusion weights for fusing the target video frame and at least two other video frames according to the plurality of pairs of two-frame fusion weights, wherein a set of multi-frame fusion weights includes a plurality of weights for weighting a group of pixel values, wherein the group of pixel values ​​includes a pixel of the target video frame and at least two pixels in at least two other video frames having the same position as the pixel; for a set of multi-frame fusion weights, weighting a group of pixel values ​​corresponding to the set of weights using the set of weights to obtain a new pixel value; and generating a target video frame after noise reduction based on the new pixel value. It should be understood that the above-mentioned multi-frame fusion noise reduction operation can be performed on all or part of the pixels of the target video frame. If the above-mentioned multi-frame fusion noise reduction operation is performed on only part of the pixels of the target video frame, the values ​​of the remaining pixels can remain unchanged or be obtained using other noise reduction methods. As long as at least one pixel in the target video frame is denoised using the multi-frame fusion noise reduction method provided in the embodiment of the present application, it can be considered that the target video frame is denoised using the multi-frame fusion noise reduction method provided in the embodiment of the present application.

[0183] It should be understood that the above-mentioned multi-frame fusion noise reduction of video frames requires caching multiple video frames. When the video noise reduction is started, the first several frames may not be subjected to noise reduction processing.

[0184] In one possible implementation, after completing the noise reduction of a frame of video, the cached multiple video frames can be updated, for example, the first frame in the time sequence of the cached multiple video frames is deleted, and a frame of video without noise reduction is obtained and added to the end of the cached multiple video frames.

[0185] The specific process of multi-frame fusion noise reduction of the above video frames can be found in Figures 8 to 12 , I will not go into details here.

[0186] It should be understood that the above Figures 8 to 12 The video noise reduction method shown is suitable for Figures 14 to 16 When the user uses the professional video recording mode, the electronic device performs multi-frame fusion noise reduction processing on the video, that is, the above Figures 8 to 12 The extension, limitation, explanation and description of the relevant contents in the Figures 14 to 16 , I will not go into details here.

[0187] Based on the video noise reduction methods described in the above embodiments, the embodiments of the present application further provide a video noise reduction device 600, including one or more functional units for executing the video noise reduction methods described in the above embodiments. These functional units can be implemented by software, or by hardware, such as a processor, or by a suitable combination of software, hardware and / or firmware. For example, some functions are implemented by an application processor executing a computer program, and some functions are implemented by a wireless communication module (such as a Bluetooth, Wi-Fi module, etc.), an MCU, an ISP, etc.

[0188] In one embodiment, Fig.17 As shown, the video noise reduction device 600 at least includes: a video frame buffer module 601, a fusion weight acquisition module 604, a multi-frame fusion module 605 and a noise-reduced video frame generation module 606. The video frame buffer module 601 is used to cache multiple video frames arranged in time sequence, including a target video frame and at least two other video frames. The target video frame is a frame to be noise-reduced, which can be any frame of multiple video frames; the fusion weight acquisition module 604 is used to obtain the weights for weighted fusion of the above multiple video frames to achieve noise reduction, and the two-frame fusion weights can be obtained first, and then the multi-frame fusion weights are obtained based on the two-frame fusion weights; the multi-frame fusion module 605 is used to perform weighted fusion on the cached multiple video frames according to the fusion weights to obtain new pixel values; the noise-reduced video frame generation module 606 is used to generate a new video frame based on the new pixel values, and the new video frame is a noise-reduced video frame.

[0189] Optionally, the video noise reduction device 600 may further include a video frame alignment module 602 for performing image alignment on a plurality of cached video frames.

[0190] Optionally, the video noise reduction device 600 may further include a video frame filtering module 603 for performing smoothing filtering on a plurality of cached video frames before obtaining the fusion weights, so as to avoid fluctuations in weights caused by noise within the frames.

[0191] In one embodiment, the video frame buffer module 601 may be a cache, which may achieve noise reduction while shooting a video.

[0192] In one embodiment, the function of the fusion weight acquisition module 604 can be implemented by a combination of multiple devices. For example, the fusion weight acquisition module 604 can include an AP and a GPU. The specific process of the fusion weight acquisition module 604 acquiring the fusion weight by calling the combination of the AP and the GPU can refer to the aforementioned Figures 8 to 12 Related embodiments.

[0193] In one embodiment, the video noise reduction device 600 can output the noise-reduced video frame generated by the noise-reduced video frame generation module 606, and the video noise reduction device 600 can have a display module 607 for displaying an image obtained according to the noise-reduced video frame; the display module 607 can be a display, such as a liquid crystal display, an organic light-emitting diode display, etc.

[0194] In one embodiment, the video noise reduction device 600 may also have a communication module 608 for communicating with other devices. It can obtain non-noise-reduced video frames from other devices for noise reduction processing, and can also transmit the noise-reduced video frames to other devices; the communication module can be a device with communication function, such as a Wi-Fi module, a Bluetooth module, etc.

[0195] The present application embodiment also provides an electronic device 700, such as Fig.18 As shown, the electronic device 700 includes: a processing circuit 702, and a communication interface 704 and a storage medium 706 connected thereto.

[0196] The processing circuit 702 is used to process data, control data access and storage, issue commands, and control other components to execute various steps of the video noise reduction method of the embodiment of the present application, for example, to execute Figure 8 , Fig. 9 as well as Figures 11 to 16 The processing circuit 702 may be implemented as one or more processors, one or more controllers and / or other structures that can be used to execute a program. The processing circuit 702 may specifically include at least one of a general-purpose processor, a digital signal processor (DSP), a GPU, an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic components. A general-purpose processor may include a microprocessor, as well as any conventional processor, controller, microcontroller, or state machine. The processing circuit 702 may also be implemented as a computing component, such as a combination of a DSP and a microprocessor.

[0197] The communication interface 704 may include circuits and / or programs to implement bidirectional communication between the electronic device 700 and one or more network devices (e.g., routers, switches, access points, etc.). The communication interface 704 includes at least one receiving circuit 742 and / or at least one transmitting circuit 741. In one embodiment, the communication interface 704 may be implemented in whole or in part by a wireless modem.

[0198] The storage medium 706 may include a non-transitory computer-readable storage medium, such as a magnetic storage device (e.g., a hard disk, a floppy disk, a magnetic stripe), an optical storage medium (e.g., a digital versatile disk (DVD)), a smart card, a flash memory device, a random access memory (RAM), a read-only memory (ROM), a programmable ROM (PROM), an erasable PROM (EPROM), a register, and any combination thereof. The storage medium 706 may be coupled to the processing circuit 702 so that the processing circuit 702 can read information and write information to the storage medium 706. Specifically, the storage medium 706 may be integrated into the processing circuit 702, or the storage medium 706 and the processing circuit 702 may be separate. The storage medium 706 may store a computer program 761. When the computer program 761 is executed by the processing circuit 702, the processing circuit 702 is used to perform the various steps of the video noise reduction method of the embodiment of the present application, for example, to execute Figure 8 , Fig. 9 as well as Figures 11 to 16 Part or all of the steps in any of the embodiments shown.

[0199] It should be understood that the video noise reduction device shown in the embodiment of the present application can be a server, for example, it can be a server in the cloud, or it can be a chip configured in the server in the cloud; or, the video noise reduction device shown in the embodiment of the present application can be an electronic device, or it can be a chip configured in the electronic device.

[0200] The present application also provides a chip, which includes a data interface and a processor. The data interface may be an input / output circuit or a communication interface; the processor may be a processor or a microprocessor or an integrated circuit integrated on the chip. The chip may execute the video noise reduction method in the above method embodiment.

[0201] The embodiment of the present application also provides a computer-readable storage medium having instructions stored thereon, and when the instructions are executed, the video noise reduction method in the above method embodiment is executed.

[0202] The embodiment of the present application also provides a computer program product including instructions, which, when executed, execute the video noise reduction method in the above method embodiment.

[0203] It should be understood that in the various embodiments of the present application, the size of the serial numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.

[0204] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0205] It should be noted that the terms "executable program", "computer program" and "program" used in the embodiments of the present application should be broadly interpreted as including but not limited to: instructions, instruction sets, codes, code segments, subroutines, software modules, applications, software packages, threads, processes, functions, firmware, middleware, etc. Those skilled in the art can clearly understand that for the convenience and simplicity of description, the specific working processes of the above-described devices and units can refer to the corresponding processes in the aforementioned method embodiments, and will not be repeated here.

[0206] In the several embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0207] In addition, each functional unit in each embodiment of the present application may be integrated into one processing module, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0208] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application can be essentially or partly embodied in the form of a software product that contributes to the prior art. The computer software product is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods described in the various embodiments of the present application. The aforementioned storage media include: various media that can store executable programs, such as USB flash drives, mobile hard disks, read-only memory random access memories, magnetic disks or optical disks.

[0209] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art who is familiar with the present technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

Claims

1. A video noise reduction method, characterized in that: include: Buffering a plurality of video frames, the plurality of video frames comprising a target video frame and at least two other video frames, the target video frame being any one of the plurality of video frames; Acquire multiple pairs of two-frame fusion weights, each pair of the two-frame fusion weights includes two weights for weighting the values ​​of a pair of pixel points, the pair of pixel points includes a first pixel point of the target video frame, and a corresponding pixel point in one of the other video frames having the same position as the first pixel point; Obtaining the two-frame fusion weights includes: Obtaining a first pixel value difference, where the first pixel value difference is a pixel value difference between the first pixel point and the corresponding pixel point; Acquire the noise level of the first pixel; Obtaining a second pixel value difference, where the second pixel value difference is a pixel value difference between two pixel points corresponding to the first pixel point and located in different other video frames; Obtaining a fusion weight of the two frames according to the first pixel value difference, the noise level, the second pixel value difference and a parameter for controlling a fusion degree; According to the multiple pairs of two-frame fusion weights, a multi-frame fusion weight for fusing the target video frame and the at least two other video frames is obtained, wherein the multi-frame fusion weight includes a plurality of weights for weighting values ​​of a group of pixel points, and the group of pixel points includes the first pixel point of the target video frame and at least two corresponding pixel points in the at least two other video frames having the same position as the first pixel point; According to the multi-frame fusion weight, weighting the values ​​of the group of pixel points corresponding to the multi-frame fusion weight to obtain a new pixel value; Based on the new pixel value, a target video frame after noise reduction is generated.

2. The method according to claim 1, characterized in that The acquiring the two-frame fusion weight according to the first pixel value difference, the noise level, the second pixel value difference and the parameter for controlling the fusion degree comprises: comparing the first pixel value difference and a plurality of the second pixel value differences to obtain a maximum pixel value difference; The two-frame fusion weight is obtained according to the maximum pixel value difference, the noise level and the parameter for controlling the fusion degree.

3. The method according to claim 1, characterized in that The obtaining, according to the plurality of pairs of two-frame fusion weights, a multi-frame fusion weight for fusing the target video frame and the at least two other video frames comprises: According to the plurality of pairs of two-frame fusion weights, obtaining a first weight in the multi-frame fusion weights, where the first weight represents a weight of the first pixel point; At least two weights other than the first weight in the multi-frame fusion weights are obtained according to the first weight and the multiple pairs of two-frame fusion weights.

4. The method according to claim 3, characterized in that The acquiring, according to the plurality of pairs of two-frame fusion weights, a first weight in the multi-frame fusion weights comprises: A plurality of weights corresponding to the first pixel point among the plurality of pairs of two-frame fusion weights are obtained, where the first weight is a maximum value, a minimum value, an average value, or a weighted sum of the plurality of weights.

5. The method according to any one of claims 1 to 4, characterized in that: Also includes: A first frame of the plurality of video frames is deleted.

6. The method according to any one of claims 1 to 4, characterized in that: Also includes: A video frame before noise reduction is obtained, and the video frame before noise reduction is added to the end of the multiple video frames.

7. A video noise reduction method, characterized in that: include: In response to a user operation, a video frame is displayed on a display screen of an electronic device, wherein the video frame includes a target video frame after noise reduction, and the target video frame after noise reduction is obtained by performing video noise reduction on the target video frame acquired by the electronic device, and the noise reduction on the target video frame includes: Buffering a plurality of video frames, the plurality of video frames comprising the target video frame and at least two other video frames, the target video frame being any one of the plurality of video frames; Acquire multiple pairs of two-frame fusion weights, where a pair of the two-frame fusion weights includes two weights for weighting values ​​of a pair of pixel points, where the pair of pixel points includes a first pixel point of the target video frame and a corresponding pixel point in one of the other video frames having the same position as the first pixel point; Obtaining the two-frame fusion weights includes: Obtaining a first pixel value difference, where the first pixel value difference is a pixel value difference between the first pixel point and the corresponding pixel point; Acquire the noise level of the first pixel; Obtaining a second pixel value difference, where the second pixel value difference is a pixel value difference between two pixel points corresponding to the first pixel point and located in different other video frames; Obtaining a fusion weight of the two frames according to the first pixel value difference, the noise level, the second pixel value difference and a parameter for controlling a fusion degree; According to the multiple pairs of two-frame fusion weights, a multi-frame fusion weight for fusing the target video frame and the at least two other video frames is obtained, wherein the multi-frame fusion weight includes a plurality of weights for weighting values ​​of a group of pixel points, and the group of pixel points includes the first pixel point of the target video frame, and at least two second corresponding pixel points in the at least two other video frames having the same position as the first pixel point; According to the multi-frame fusion weight, weighting the values ​​of the group of pixel points corresponding to the multi-frame fusion weight to obtain a new pixel value; Based on the new pixel value, the denoised target video frame is generated.

8. The video noise reduction method according to claim 7, characterized in that: The user operation is an operation of turning on a video noise reduction mode, where the video noise reduction mode is used to indicate that noise reduction is to be performed on a video frame acquired by the electronic device; or, the user operation is an operation of starting video shooting.

9. The method according to claim 7, characterized in that: The acquiring the two-frame fusion weight according to the first pixel value difference, the noise level, the second pixel value difference and the parameter for controlling the fusion degree comprises: comparing the first pixel value difference and a plurality of the second pixel value differences to obtain a maximum pixel value difference; The two-frame fusion weight is obtained according to the maximum pixel value difference, the noise level and the parameter for controlling the fusion degree.

10. The method according to any one of claims 7 to 9, characterized in that: The obtaining, according to the plurality of pairs of two-frame fusion weights, a multi-frame fusion weight for fusing the target video frame and the at least two other video frames comprises: According to the multiple pairs of two-frame fusion weights, obtaining a first weight in the multiple-frame fusion weights, where the first weight represents a weight of the first pixel point; At least two weights other than the first weight in the multi-frame fusion weights are obtained according to the first weight and the multiple pairs of two-frame fusion weights.

11. The method according to claim 10, characterized in that The acquiring, according to the plurality of pairs of two-frame fusion weights, a first weight in the multi-frame fusion weights comprises: A plurality of weights corresponding to the first pixel point among the plurality of pairs of two-frame fusion weights are obtained, where the first weight is a maximum value, a minimum value, an average value, or a weighted sum of the plurality of weights.

12. The method according to any one of claims 7 to 9, characterized in that: Also includes: A first frame of the plurality of video frames is deleted.

13. The method according to any one of claims 7 to 9, characterized in that: Also includes: A video frame before noise reduction is obtained, and the video frame before noise reduction is added to the end of the multiple video frames.

14. A video noise reduction device, characterized in that: include: A storage module, configured to cache a plurality of video frames, wherein the plurality of video frames include a target video frame and at least two other video frames, and the target video frame is any one of the plurality of video frames; an acquisition module, configured to acquire a plurality of pairs of two-frame fusion weights, wherein a pair of the two-frame fusion weights comprises two weights for weighting a pair of pixel points, wherein the pair of pixel points comprises a first pixel point of the target video frame and a corresponding pixel point in one of the other video frames having the same position as the first pixel point; The acquisition module is further used to acquire a multi-frame fusion weight according to the multiple pairs of two-frame fusion weights, wherein the multi-frame fusion weight is used to fuse the target video frame and the at least two other video frames, and the multi-frame fusion weight includes a plurality of weights used to weight the values ​​of a group of pixel points, wherein the group of pixel points includes the first pixel point of the target video frame, and at least two corresponding pixel points in the at least two other video frames having the same position as the first pixel point; Obtaining the two-frame fusion weights includes: Obtaining a first pixel value difference, where the first pixel value difference is a pixel value difference between the first pixel point and the corresponding pixel point; Acquire the noise level of the first pixel; Obtaining a second pixel value difference, where the second pixel value difference is a pixel value difference between two pixel points corresponding to the first pixel point and located in different other video frames; Obtaining a fusion weight of the two frames according to the first pixel value difference, the noise level, the second pixel value difference and a parameter for controlling a fusion degree; The processing module is used to weight the values ​​of a group of pixel points corresponding to the multi-frame fusion weights according to the multi-frame fusion weights to obtain a new pixel value, and generate a denoised target video frame based on the new pixel value.

15. The device according to claim 14, characterized in that The obtaining of the two-frame fusion weights comprises: Acquire the noise level of the first pixel; Obtaining a first pixel value difference, where the first pixel value difference is a pixel value difference between the first pixel point and the corresponding pixel point; The two-frame fusion weight is obtained according to the first pixel value difference, the noise level, the second pixel value difference and a parameter for controlling the fusion degree.

16. The device according to claim 14, characterized in that The obtaining of the two-frame fusion weights comprises: Acquire the noise level of the first pixel; Obtaining a first pixel value difference, where the first pixel value difference is a pixel value difference between the first pixel point and the corresponding pixel point; Acquire a plurality of second pixel value differences, one of the second pixel value differences being a pixel value difference between two corresponding pixel points of the first pixel point; The two-frame fusion weight is obtained according to the first pixel value difference, the noise level, the plurality of second pixel value differences and a parameter for controlling a fusion degree.

17. The device according to claim 16, characterized in that The acquiring the two-frame fusion weight according to the first pixel value difference, the noise level, the plurality of second pixel value differences and the parameter for controlling the fusion degree comprises: comparing the first pixel value difference with the plurality of second pixel value differences to obtain a maximum pixel value difference; The two-frame fusion weight is obtained according to the maximum pixel value difference, the noise level and the parameter for controlling the fusion degree.

18. The device according to any one of claims 14 to 17, characterized in that: The obtaining of multi-frame fusion weights comprises: According to the multiple pairs of two-frame fusion weights, obtaining a first weight in the multiple-frame fusion weights, where the first weight represents a weight of the first pixel point; At least two weights other than the first weight in the multi-frame fusion weights are obtained according to the first weight and the multiple pairs of two-frame fusion weights.

19. The device according to claim 18, characterized in that The acquiring, according to the plurality of pairs of two-frame fusion weights, a first weight in the multi-frame fusion weights comprises: A plurality of weights corresponding to the first pixel point among the plurality of pairs of two-frame fusion weights are obtained, where the first weight is a maximum value, a minimum value, an average value, or a weighted sum of the plurality of weights.

20. The device according to any one of claims 14 to 17, characterized in that: The processing module is also used for: A first frame of the plurality of video frames is deleted.

21. The device according to any one of claims 14 to 17, characterized in that: The processing module is further used for: acquiring a video frame before noise reduction, and adding the video frame before noise reduction to the end of the multiple video frames.

22. A video noise reduction device, characterized in that: include: A processing module, configured to display a video frame on a display screen of an electronic device in response to a user operation, wherein the video frame includes a target video frame after noise reduction, and the target video frame after noise reduction is obtained by performing video noise reduction on the target video frame acquired by the electronic device; A storage module, configured to cache a plurality of video frames, wherein the plurality of video frames include the target video frame and at least two other video frames, and the target video frame is any one of the plurality of video frames; an acquisition module, configured to acquire a plurality of pairs of two-frame fusion weights, wherein a pair of the two-frame fusion weights comprises two weights for weighting a pair of pixel points, wherein the pair of pixel points comprises a first pixel point of the target video frame and a corresponding pixel point in one of the other video frames having the same position as the first pixel point; Obtaining the two-frame fusion weights includes: Obtaining a first pixel value difference, where the first pixel value difference is a pixel value difference between the first pixel point and the corresponding pixel point; Acquire the noise level of the first pixel; Obtaining a second pixel value difference, where the second pixel value difference is a pixel value difference between two pixel points corresponding to the first pixel point and located in different other video frames; Obtaining a fusion weight of the two frames according to the first pixel value difference, the noise level, the second pixel value difference and a parameter for controlling a fusion degree; The acquisition module is further used to acquire a multi-frame fusion weight according to the multiple pairs of two-frame fusion weights, wherein the multi-frame fusion weight is used to fuse the target video frame and the at least two other video frames, and the multi-frame fusion weight includes a plurality of weights used to weight the values ​​of a group of pixel points, wherein the group of pixel points includes the first pixel point of the target video frame, and at least two corresponding pixel points in the at least two other video frames having the same position as the first pixel point; The processing module is also used to weight the values ​​of a group of pixel points corresponding to the multi-frame fusion weights according to the multi-frame fusion weights to obtain a new pixel value, and generate a denoised target video frame based on the new pixel value.

23. A video noise reduction device, comprising a memory, a processor, and a program stored in the memory and executable on the processor, characterized in that: When the processor executes the program, the video noise reduction method according to any one of claims 1 to 6 is performed.

24. The video noise reduction device according to claim 23, characterized in that: Also includes: The camera is used to capture video. When the processor executes the program stored in the memory, the processor is used to execute the video noise reduction method to reduce noise on the video captured by the camera.

25. A video noise reduction device, comprising a memory, a processor, and a program stored in the memory and executable on the processor, characterized in that: When the processor executes the program, the video noise reduction method according to any one of claims 7 to 13 is performed.

26. The video noise reduction device according to claim 25, characterized in that: Also includes: The camera is used to capture video. When the processor executes the program stored in the memory, the processor is used to execute the video noise reduction method to reduce noise on the video captured by the camera.

27. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the video noise reduction method according to any one of claims 1 to 6 or 7 to 13 is implemented.

28. A computer program product comprising a computer program / instructions, characterized in that When the computer program / instructions are executed by a processor, the steps of the method described in any one of claims 1 to 6 or 7 to 13 are implemented.

29. A chip, characterized in that: The chip includes a processor and a data interface, and the processor reads instructions and video frames stored in the memory through the data interface to execute the video noise reduction method according to any one of claims 1 to 6 or 7 to 13.

Citation Information

Patent Citations

  • Image processing device, image processing method, image processing program, and recording medium

    US20160006978A1