Image processing method and device, equipment and medium

By identifying and denoising isolated point noise pixels and combining surface curvature for adaptive enhancement, the problem of poor image denoising effect in the prior art is solved, the subjective quality of the image is improved and the experience decline caused by noise amplification is avoided.

CN119107246APending Publication Date: 2024-12-10BEIJING BAIDU NETCOM SCI & TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202411267041.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-10
Publication Date
2024-12-10

AI Technical Summary

Technical Problem

The prior art has poor effect in the process of image denoising, resulting in insufficient improvement of subjective image quality, especially during video encoding and decoding, noise amplification will affect the viewing experience.

Method used

By determining the curvature of the pixel surface in the image to be processed, identifying isolated point noise pixels based on the preset curvature requirements for denoising, and combining sharpening and other means to further enhance the image to avoid the subjective experience decline caused by noise amplification.

Benefits of technology

It effectively improves the subjective quality of the image, avoids the problem of noise amplification during sharpening, and achieves a better image viewing experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119107246A_ABST
    Figure CN119107246A_ABST
Patent Text Reader

Abstract

The invention provides an image processing method and device, equipment and a medium, and relates to the technical field of image processing, in particular to the technical fields of image noise reduction, image enhancement and the like. The image processing method comprises the following steps: acquiring a to-be-processed image, wherein the to-be-processed image comprises a plurality of pixels; determining respective curved surface curvatures of the plurality of pixels; determining the pixel meeting a first preset curvature requirement in the plurality of pixels as an isolated point noise pixel; and carrying out denoising on isolated point noise pixels.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of image processing technology, specifically to technical fields such as image noise reduction and image enhancement, and can be applied to scenes such as autonomous driving, and in particular to an image processing method, an image processing device, an electronic device, a computer-readable storage medium, and a computer program product. Background Art

[0002] Preprocessing and enhancing low-quality images is an effective way to improve the subjective experience of images. By denoising low-quality images, the subjective quality of images can be effectively enhanced, so that viewers can have a clearer intuitive experience.

[0003] The methods described in this section are not necessarily methods that have been previously conceived or employed. Unless otherwise indicated, it should not be assumed that any method described in this section is considered to be prior art simply because it is included in this section. Similarly, unless otherwise indicated, the issues mentioned in this section should not be considered to have been recognized in any prior art. Summary of the invention

[0004] The present disclosure provides an image processing method, an image processing device, an electronic device, a computer-readable storage medium, and a computer program product.

[0005] According to one aspect of the present disclosure, there is provided an image processing method, comprising: acquiring an image to be processed, the image to be processed comprising a plurality of pixels; determining a surface curvature of each of the plurality of pixels; determining pixels among the plurality of pixels that meet a first preset curvature requirement as isolated point noise pixels; and denoising the isolated point noise pixels.

[0006] According to one aspect of the present disclosure, there is provided an image processing device, comprising: an acquisition unit, configured to acquire an image to be processed, the image to be processed comprising a plurality of pixels; a surface curvature determination unit, configured to determine the surface curvature of each of the plurality of pixels; an isolated point noise pixel determination unit, configured to determine pixels among the plurality of pixels that meet a first preset curvature requirement as isolated point noise pixels; and a denoising unit, configured to denoise the isolated point noise pixels.

[0007] According to another aspect of the present disclosure, an electronic device is provided, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the above method.

[0008] According to another aspect of the present disclosure, a non-transitory computer-readable storage medium storing computer instructions is provided, wherein the computer instructions are used to enable a computer to execute the above method.

[0009] According to another aspect of the present disclosure, a computer program product is provided, comprising a computer program, wherein the computer program implements the above method when executed by a processor.

[0010] According to one or more embodiments of the present disclosure, by determining the surface curvature of multiple pixels in the image to be processed, and determining isolated point noise in the multiple pixels based on preset curvature requirements, and then denoising these isolated point noises, the subjective quality of the image is effectively enhanced.

[0011] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0012] The accompanying drawings exemplarily illustrate the embodiments and constitute a part of the specification, and together with the text description of the specification, are used to explain the exemplary implementation of the embodiments. The embodiments shown are for illustrative purposes only and do not limit the scope of the claims. In all drawings, the same reference numerals refer to similar but not necessarily identical elements.

[0013] Figure 1 A schematic diagram showing an exemplary system in which the various methods described herein may be implemented according to an embodiment of the present disclosure;

[0014] Figure 2 A flowchart of an image processing method according to an exemplary embodiment of the present disclosure is shown;

[0015] Figure 3 A flowchart of an image processing method according to an exemplary embodiment of the present disclosure is shown;

[0016] Figure 4 A flow chart of enhancing non-isolated point noise pixels based on the surface curvature of the non-isolated point noise pixels among a plurality of pixels according to an exemplary embodiment of the present disclosure is shown;

[0017] Figure 5 A flow chart of enhancing non-isolated point noise pixels based on sharpening strength according to an exemplary embodiment of the present disclosure is shown;

[0018] Figure 6 A structural block diagram of an image processing apparatus according to an exemplary embodiment of the present disclosure is shown; and

[0019] Figure 7A structural block diagram of an exemplary electronic device that can be used to implement the embodiments of the present disclosure is shown. DETAILED DESCRIPTION

[0020] The following is a description of exemplary embodiments of the present disclosure in conjunction with the accompanying drawings, including various details of the embodiments of the present disclosure to facilitate understanding, which should be considered as merely exemplary. Therefore, it should be recognized by those of ordinary skill in the art that various changes and modifications may be made to the embodiments described herein without departing from the scope of the present disclosure. Similarly, for the sake of clarity and conciseness, the description of well-known functions and structures is omitted in the following description.

[0021] In the present disclosure, unless otherwise specified, the use of the terms "first", "second", etc. to describe various elements is not intended to limit the positional relationship, timing relationship, or importance relationship of these elements, and such terms are only used to distinguish one element from another element. In some examples, the first element and the second element may refer to the same instance of the element, and in some cases, based on the description of the context, they may also refer to different instances.

[0022] The terms used in the description of various examples in this disclosure are only for the purpose of describing specific examples and are not intended to be limiting. Unless the context clearly indicates otherwise, if the number of elements is not specifically limited, the element can be one or more. In addition, the term "and / or" used in this disclosure covers any one of the listed items and all possible combinations.

[0023] In the related art, the means for denoising images are single and the effect is poor.

[0024] To solve the above problems, the present disclosure determines the surface curvature of multiple pixels in the image to be processed, and determines isolated point noise in the multiple pixels based on preset curvature requirements, and then denoises these isolated point noises, thereby effectively enhancing the subjective quality of the image.

[0025] The embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings.

[0026] Figure 1 FIG. 1 is a schematic diagram of an exemplary system 100 in which various methods and apparatuses described herein may be implemented according to an embodiment of the present disclosure. Figure 1 , the system 100 includes one or more client devices 101, 102, 103, 104, 105, and 106, a server 120, and one or more communication networks 110 coupling the one or more client devices to the server 120. The client devices 101, 102, 103, 104, 105, and 106 may be configured to execute one or more applications.

[0027] In an embodiment of the present disclosure, the server 120 may run one or more services or software applications that enable execution of the methods of the present disclosure.

[0028] In some embodiments, server 120 may also provide other services or software applications that may include non-virtualized environments and virtualized environments. In some embodiments, these services may be provided as web-based services or cloud services, such as provided to users of client devices 101, 102, 103, 104, 105, and / or 106 under a software as a service (SaaS) network.

[0029] exist Figure 1 In the configuration shown, the server 120 may include one or more components that implement the functions performed by the server 120. These components may include software components, hardware components, or a combination thereof that can be executed by one or more processors. Users operating client devices 101, 102, 103, 104, 105, and / or 106 may in turn utilize one or more client applications to interact with the server 120 to utilize the services provided by these components. It should be understood that a variety of different system configurations are possible, which may differ from the system 100. Therefore, Figure 1 is one example of a system for implementing the various methods described herein and is not intended to be limiting.

[0030] The user can use client devices 101, 102, 103, 104, 105 and / or 106 to perform human-computer interaction. The client device can provide an interface that enables the user of the client device to interact with the client device. The client device can also output information to the user via the interface. Figure 1 Only six client devices are depicted, but one skilled in the art will appreciate that the present disclosure may support any number of client devices.

[0031] Client devices 101, 102, 103, 104, 105 and / or 106 may include various types of computer devices, such as portable handheld devices, general-purpose computers (such as personal computers and laptop computers), workstation computers, wearable devices, smart screen devices, self-service terminal devices, service robots, game systems, thin clients, various messaging devices, sensors or other sensing devices, etc. These computer devices may run various types and versions of software applications and operating systems, such as MICROSOFT Windows, APPLE iOS, UNIX-like operating systems, Linux or Linux-like operating systems (such as GOOGLE Chrome OS); or include various mobile operating systems, such as MICROSOFT Windows Mobile OS, iOS, Windows Phone, Android. Portable handheld devices may include cellular phones, smart phones, tablet computers, personal digital assistants (PDAs), etc. Wearable devices may include head-mounted displays (such as smart glasses) and other devices. Game systems may include various handheld game devices, Internet-enabled game devices, etc. Client devices are capable of executing various different applications, such as various Internet-related applications, communication applications (such as email applications), short message service (SMS) applications, and may use various communication protocols.

[0032] The network 110 may be any type of network known to those skilled in the art that may support data communications using any of a variety of available protocols, including but not limited to TCP / IP, SNA, IPX, etc. By way of example only, the one or more networks 110 may be a local area network (LAN), an Ethernet-based network, a token ring, a wide area network (WAN), the Internet, a virtual network, a virtual private network (VPN), an intranet, an extranet, a public switched telephone network (PSTN), an infrared network, a wireless network (e.g., Bluetooth, WIFI), and / or any combination of these and / or other networks.

[0033] Server 120 may include one or more general purpose computers, dedicated server computers (e.g., PC (personal computer) servers, UNIX servers, mid-range servers), blade servers, mainframe computers, server clusters, or any other suitable arrangement and / or combination. Server 120 may include one or more virtual machines running virtual operating systems, or other computing architectures involving virtualization (e.g., one or more flexible pools of logical storage devices that may be virtualized to maintain a server's virtual storage device). In various embodiments, server 120 may run one or more services or software applications that provide the functionality described below.

[0034] The computing units in the server 120 may run one or more operating systems including any of the above operating systems and any commercially available server operating systems. The server 120 may also run any of a variety of additional server applications and / or middle-tier applications, including HTTP servers, FTP servers, CGI servers, JAVA servers, database servers, etc.

[0035] In some implementations, server 120 may include one or more applications to analyze and consolidate data feeds and / or event updates received from users of client devices 101, 102, 103, 104, 105, and 106. Server 120 may also include one or more applications to display data feeds and / or real-time events via one or more display devices of client devices 101, 102, 103, 104, 105, and 106.

[0036] In some embodiments, the server 120 may be a server of a distributed system, or a server combined with a blockchain. The server 120 may also be a cloud server, or an intelligent cloud computing server or intelligent cloud host with artificial intelligence technology. A cloud server is a host product in a cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and virtual private servers (VPS) services.

[0037] The system 100 may also include one or more databases 130. In some embodiments, these databases may be used to store data and other information. For example, one or more of the databases 130 may be used to store information such as audio files and video files. The databases 130 may reside in various locations. For example, the data repository used by the server 120 may be local to the server 120, or may be remote from the server 120 and may communicate with the server 120 via a network-based or dedicated connection. The databases 130 may be of different types. In some embodiments, the database used by the server 120 may be a database, such as a relational database. One or more of these databases may store, update, and retrieve data to and from the database in response to a command.

[0038] In some embodiments, one or more of the databases 130 may also be used by applications to store application data. The databases used by the applications may be different types of databases, such as a key-value store, an object store, or a conventional store backed by a file system.

[0039] Figure 1The system 100 may be configured and operated in various ways to enable the application of various methods and apparatuses described in the present disclosure.

[0040] According to one aspect of the present disclosure, an image processing method is provided. Figure 2 As shown, the image processing method includes: step S201, obtaining an image to be processed, wherein the image to be processed includes multiple pixels; step S202, determining the surface curvature of each of the multiple pixels; step S203, determining the pixels among the multiple pixels that meet the first preset curvature requirement as isolated point noise pixels; and step S204, denoising the isolated point noise pixels.

[0041] Therefore, by determining the surface curvature of multiple pixels in the image to be processed, and determining isolated point noise in the multiple pixels based on the preset curvature requirement, and then denoising these isolated point noises, the subjective quality of the image is effectively enhanced.

[0042] The image processing method provided by the present disclosure can be used to process the encoded image frames in the video. Preprocessing and enhancing the low-quality encoded content is an effective method to improve the subjective experience of the encoded video. In the existing video enhancement technology, sharpening is a relatively simple and effective enhancement method, which can effectively highlight the texture and edges in the video, so that the viewer has a clearer intuitive experience. However, while sharpening, the noise will also be amplified to a certain extent, resulting in a serious decline in subjective experience. By using the image processing method of the present disclosure to process the encoded image frames, and then using sharpening and other means to further enhance the processed images, the above problems can be effectively avoided, thereby obtaining images with better subjective quality.

[0043] In the video encoding and decoding process, the basic process is as follows: in the encoder, a frame of image is divided into blocks, intra-frame prediction or inter-frame prediction is used for the current block to generate the prediction block of the current block, the original block of the current block minus the prediction block to obtain the residual block, the residual block is transformed and quantized to obtain the quantization coefficient matrix, and the quantization coefficient matrix is ​​entropy encoded and output to the bitstream. In the decoder, intra-frame prediction or inter-frame prediction is used for the current block to generate the prediction block of the current block, on the other hand, the bitstream is decoded to obtain the quantization coefficient matrix, the quantization coefficient matrix is ​​inversely quantized and inversely transformed to obtain the residual block, and the prediction block and the residual block are added to obtain the reconstructed block. The reconstructed blocks constitute the reconstructed image, and the reconstructed image is loop-filtered based on the image or block to obtain the decoded image. The encoder also needs similar operations as the decoder to obtain the decoded image. The decoded image can be used as a reference frame for inter-frame prediction for subsequent frames. The block division information, prediction, transformation, quantization, entropy coding, loop filtering and other mode information or parameter information determined by the encoder need to be output to the bitstream if necessary; then the decoder determines the same block division information, prediction, transformation, quantization, entropy coding, loop filtering and other mode information or parameter information as the encoder by parsing and analyzing the existing information, thereby ensuring that the decoded image obtained by the encoder is the same as the decoded image obtained by the decoder. The decoded image obtained by the encoder is also usually called a reconstructed image. The current block can be divided into prediction units during prediction, and the current block can be divided into transformation units during transformation. The division of prediction units and transformation units can be different. The above is the basic process of the video encoder and decoder under the block-based hybrid coding framework. With the development of technology, some modules or steps of the framework or process may be optimized. The embodiment of the present application is applicable to the basic process under the block-based hybrid coding framework, but is not limited to the framework and process.

[0044] At present, the common video coding and decoding standards all adopt the block-based hybrid coding framework. Each frame in the video image is divided into square LCUs of the same size (such as 128×128, 64×64, etc.), and each LCU can also be divided into rectangular CUs according to rules; and CUs may also be divided into smaller PUs, TUs, etc. Specifically, the coding framework may include steps such as prediction, transform, quantization, entropy coding, and in-loop filtering. Among them, prediction can be divided into intra-frame prediction and inter-frame prediction, and inter-frame prediction can include motion estimation and motion compensation. Since there is a strong correlation between adjacent pixels in a frame of a video image, the use of intra-frame prediction in video coding and decoding technology can eliminate the spatial redundancy between adjacent pixels; however, since there is also a strong similarity between adjacent frames in a video image, the use of inter-frame prediction in video coding and decoding technology can eliminate the temporal redundancy between adjacent frames, thereby improving the coding and decoding efficiency.

[0045] Videos are composed of multiple images. In order to make the video look smooth, each second of video contains dozens or even hundreds of frames, such as 24 frames per second, 30 frames per second, 50 frames per second, 60 frames per second or 120 frames per second. Therefore, there is a lot of temporal redundancy in the video, or in other words, there is a lot of temporal correlation in the video. Inter-frame prediction uses this temporal correlation to improve compression efficiency. Inter-frame prediction often uses "motion" to exploit temporal correlation. A very simple "motion" model is that an object is at a certain position on the image corresponding to a certain moment, and after a certain period of time, it moves to another position on the image corresponding to the current moment. This is the most basic and commonly used translation motion in video coding and decoding. Inter-frame prediction uses motion information to represent "motion". Basic motion information includes the information of the reference frame and the information of the MV; the reference frame can also be understood as the reference picture. The codec determines the reference frame / reference picture based on the information of the reference frame / reference picture, and determines the coordinates of the reference block based on the information of the MV and the coordinates of the current block. The reference block is determined by the coordinates of the reference block in the reference picture. Using a determined reference block as a prediction block is the most basic prediction method for inter-frame prediction.

[0046] In some embodiments, in step S201, a frame of encoded image source may be read in as an image to be processed.

[0047] In the embodiment of the present disclosure, a video reading tool can be used to read the video to be subjected to audio and video synchronization detection, and the video can be decoded by the video reading tool to obtain a video segment of a target length, and audio and video detection can be performed on the video segment to obtain the audio and video synchronization detection result of the video segment.

[0048] The video decoding formats include but are not limited to: (1) H.264 / AVC (Advanced Video Coding), the video decoder is libx264; (2) H.265 / HEVC (High Efficiency Video Coding), the video decoder is libx265; (3) VP8 (Video Coding Format by Google), the video decoder is libvpx; (4) VP9 (Successor to VP8), the video decoder is libvpx-vp9; (5) AV1 (AOMedia Video 1), the video decoder is libaom-av1; (6) MPEG-2 (Moving Picture Experts Group Phase 2), the video decoder is mpeg2video; (7) MPEG-4 (Moving Picture Experts Group Phase 4), the video decoder is mpeg4; (8) Theora (Free and Open Video Codec), the video decoder is libtheora; ProRes (AppleProRes), the video decoder is prores; (10) DNxHD (Digital Nonlinear Extensible High Definition), the video decoder is dnxhd; (11) WMV (Windows Media Video), the video decoder is wmv2; (12) FLV1 (Flash Video), the video decoder is flv; (13) MJPEG (Motion JPEG), the video decoder is mjpeg

[0049] The audio decoding formats include but are not limited to: (1) AAC (Advanced Audio Coding), the audio decoder is aac; (2) MP3 (MPEG-1 Audio Layer 3), the audio decoder is libmp3lame; (3) Vorbis (Ogg Vorbis), the audio decoder is libvorbis; (4) Opus (Audio Codec), the audio decoder is libopus; (5) FLAC (Free Lossless Audio Codec), the audio decoder is flac; (6) ALAC (Apple Lossless Audio Code), the audio decoder is alac; (7) AC3 (Audio Codec 3), the audio decoder is ac3; (8) WMA (Windows Media Audio), the audio decoder is wmav2; (9) WAV (Waveform Audio File Format), the audio decoder is the built-in WAV decoder; (10) AMR (Adaptive Audio File Format), the audio decoder is the built-in WAV decoder; Multi-Rate) encoder: the audio decoder is libopencore_amrnb (NB) and libopencore_amrwb (WB); (11) PCM (Pulse Code Modulation), the audio decoder is pcm_s16le, pcm_s24le, etc.

[0050] It is understandable that the image processing method provided by the present disclosure can also be used to process other images, which is not limited here.

[0051] In step S202, the surface curvature of each pixel in the image to be processed can be determined. The surface curvature of a pixel can be used to describe the change in pixel value around a certain pixel in the image. In the present disclosure, the surface curvature of a pixel refers to the surface curvature corresponding to each pixel on a surface composed of pixel values ​​of multiple pixels in a space with pixel coordinates as x-axis and y-axis and pixel value as z-axis. Specifically, the surface curvature refers to the curvature of the surface at a point in a three-dimensional space where the coordinate position (x, y) of the pixel is used as a two-dimensional plane coordinate and the pixel value (grayscale value or color value) of the pixel is used as the third dimension (z-axis). Curvature can provide information about the local morphology of the image and help identify which areas are flat and which areas are steep.

[0052] In order to calculate the surface curvature of each pixel, the image needs to be analyzed in a local window (such as a 3×3 or 5×5 pixel neighborhood). In some embodiments, the Gaussian curvature, average curvature, minimum curvature and / or other curvatures of each of the multiple pixels can be calculated as the surface curvature of the corresponding pixel.

[0053] In some embodiments, the Gaussian curvature can be determined by calculating the product of the principal curvatures of the surface (the maximum and minimum curvatures of two principal directions perpendicular to each other at a certain point). The average curvature can be the average of the two principal curvatures of the surface, which is usually used to indicate the smoothness of a local image. The minimum curvature can be obtained by calculating the local difference between a central pixel and eight pixels around it.

[0054] In an exemplary embodiment, the minimum curvature can be calculated by the following formula:

[0055] d1=(U(i–1,j)+U(i+1,j) / 2–U(i,j)

[0056] d2=(U(i,j–1)+U(i,j+1)) / 2–U(i,j)

[0057] d3=(U(i–1,j–1)+U(i+1,j+1) / 2–U(i,j)

[0058] d4=(U(i–1,j+1)+U(i+1,j–1) / 2–U(i,j)

[0059] d5=U(i–1,j)+U(i,j–1)–U(i–1,j–1)–U(i,j)

[0060] d6=U(i–1,j)+U(i,j+1)–U(i–1,j+1)–U(i,j)

[0061] d7=U(i,j–1)+U(i+1,j)–U(i+1,j–1)–U(i,j)

[0062] d8=U(i,j+1)+U(i+1,j)–U(i+1,j+1)–U(i,j)

[0063] Determine the surface curvature d of pixel (i,j) m , so that |d m |=min{|d k |,k=1,…,8}.

[0064] Where (i, j) is the coordinate of the central pixel, and U(·,·) is the pixel value of the corresponding surrounding pixels. The above d1 and d2 reflect the second-order differences of the central pixel in the horizontal and vertical directions, d3 and d4 reflect the second-order differences of the central pixel in the two diagonal directions, and d5-d8 reflect the local differences of the central pixel in the upper left corner neighborhood, upper right corner neighborhood, lower left corner neighborhood, and lower right corner neighborhood, respectively. |d m |=min{|d k|, k = 1, ..., 8} means that the surface curvature d of the pixel (i, j) is m (ie, the minimum curvature) is determined as the value (absolute value) of the item with the smallest absolute value among the above d1-d8.

[0065] In step S203, pixels among the plurality of pixels that meet a first preset curvature requirement may be determined as isolated point noise pixels. The first preset curvature requirement may be a preset curvature range.

[0066] According to some embodiments, the first preset curvature requirement may include that the surface curvature of the corresponding pixel is greater than a preset surface curvature threshold. By determining pixels with larger surface curvature as isolated point noise, the subjective quality of the denoised image can be effectively improved.

[0067] In addition, it has been observed that isolated point noise pixels usually have large curvature in all directions, while the texture edges in the image content may have large curvature only in some directions. Therefore, the above-mentioned minimum curvature is adopted and the corresponding preset surface curvature threshold is set, so that isolated point noise in the image can be effectively identified, thereby improving the subjective quality of the processed image.

[0068] The preset surface curvature threshold can be set according to requirements. In an exemplary embodiment, the preset surface curvature threshold can be set to 5.

[0069] In step S204, the surface curvature of the pixel may be further used to denoise the isolated point noise pixels.

[0070] According to some embodiments, denoising the isolated point noise pixels may include: compensating the pixel values ​​of the isolated point noise pixels so that the surface curvature of the compensated isolated point noise pixels meets a second preset curvature requirement.

[0071] Therefore, through the above method, the isolated point noise in the image can be effectively removed, and the denoised image can be made smoother.

[0072] In some embodiments, the pixel value of the isolated point noise pixel can be compensated by adjusting the pixel value of the isolated point noise pixel. Specifically, a search algorithm or other method can be used to determine the pixel value that can make the surface curvature of the compensated isolated point noise pixel meet the above-mentioned second preset curvature requirement. According to some embodiments, the second preset curvature requirement may include that the surface curvature of the compensated isolated point noise pixel is zero. By reducing the surface curvature of the isolated point noise pixel to zero, the pixel value mutation caused by the isolated point noise in the image can be removed to the greatest extent. Specifically, reducing the surface curvature of the isolated point noise pixel to zero can make the compensated isolated point noise pixel and the adjacent pixels smooth. In addition, in some embodiments, after the image to be processed (especially the encoded image source in the video) is denoised, the image can also be sharpened and other image quality enhancement operations, but while sharpening, the noise will also be amplified to a certain extent, resulting in a serious decline in subjective experience. Therefore, the above method can avoid the amplification of noise in the sharpening process to the greatest extent.

[0073] In some embodiments, a search algorithm or other methods may be used to determine the pixel value of the compensated isolated point noise pixel so that the surface curvature of the compensated isolated point noise pixel is zero.

[0074] In some embodiments of the related art, in order to achieve subjective quality enhancement of the image, the same parameters are usually used for sharpening the entire frame of the image, but this method lacks perception of the content. To solve the above problems, the present disclosure proposes an image processing method, which uses the surface curvature of the pixels in the image to determine the isolated point noise pixels and denoise them, and at the same time, uses the surface curvature to adaptively enhance the remaining non-isolated point noise pixels. In other words, the above method determines whether each pixel is a meaningful texture edge or isolated point noise by the surface curvature, and then denoises the isolated point noise pixels and enhances the non-isolated point noise pixels (texture edges). In this way, the subjective quality of the image can be improved as a whole.

[0075] According to some embodiments, Figure 3 As shown, the image processing method may further include: step S305, enhancing the non-isolated point noise pixels based on the surface curvature of the non-isolated point noise pixels in the multiple pixels. Figure 3 The operations of step S301 to step S304 in the above description can be referred to. Figure 2 The description of steps S201 to S204 in the process will not be repeated here.

[0076] The non-isolated point noise pixels may be any other pixels except the isolated point noise pixels. In step S305, the surface curvature of the non-isolated point noise pixels may be used to determine the sharpening parameters, thereby realizing adaptive processing of image enhancement.

[0077] According to some embodiments, Figure 4 As shown, step S305, enhancing non-isolated point noise pixels based on the surface curvature of non-isolated point noise pixels in multiple pixels may include: step S401, determining the minimum curvature of the non-isolated point noise pixels and the first direction where the minimum curvature is located; step S402, determining the curvature contrast based on the curvature and the minimum curvature of the non-isolated point noise pixels in a second direction perpendicular to the first direction; step S403, determining the sharpening intensity of the non-isolated point noise pixels based on the curvature contrast, the sharpening intensity is positively correlated with the curvature contrast; and step S404, enhancing the non-isolated point noise pixels based on the sharpening intensity.

[0078] Therefore, by determining the curvature contrast based on the curvature in the minimum curvature direction and the vertical direction to judge the strength of the edge, and calculating the corresponding sharpening intensity, adaptive sharpening is achieved to ensure edge preservation and suppression of black / white edge effects.

[0079] In some embodiments, in step S401, the surface curvatures of non-isolated point noise pixels in multiple directions may be calculated, and the item with the smallest absolute value, ie, the minimum curvature, may be determined. In addition, the direction of the minimum curvature, ie, the first direction, may be determined.

[0080] In some embodiments, in step S402, the ratio of the curvature (absolute value) in the direction (second direction) perpendicular to the minimum curvature direction (first direction) of the non-isolated point noise pixel and the minimum curvature (absolute value) may be used as the curvature contrast c. It is understandable that the curvature contrast that can be used to determine the strength of the edge may also be obtained based on the curvature in the direction perpendicular to the minimum curvature direction of the non-isolated point noise pixel and the minimum curvature in other ways, which are not limited here.

[0081] In some embodiments, in step S403, the curvature contrast may be mapped to a sharpening strength. The sharpening strength may be expressed as s=A / (1+e -c ), where c is the curvature contrast and A is the scaling factor. The value of A can be adjusted according to the sharpening requirements, and the sharpening strength s ranges from (0, A). In an exemplary embodiment, A can be 1 or 4.

[0082] In some embodiments, in step S404, non-isolated point noise pixels may be enhanced based on sharpening strength.

[0083] According to some embodiments, Figure 5As shown, step S404, enhancing non-isolated point noise pixels based on sharpening intensity may include: step S501, determining the Gaussian mean in the neighborhood of the non-isolated point noise pixels; step S502, determining an intermediate result based on the difference between the pixel value of the non-isolated point noise pixels and the Gaussian mean and the sharpening intensity, the intermediate result is positively correlated with the difference, and the intermediate result is positively correlated with the sharpening intensity; and step S503, modifying the pixel value of the non-isolated point noise pixel using the intermediate result, and truncating the modified pixel value to the valid value range.

[0084] Therefore, through the above method, the effect of adaptive sharpening can be further improved, thereby improving the subjective quality of the processed image.

[0085] In some embodiments, in step S501, the Gaussian mean p' in the neighborhood of the non-isolated point noise pixel may be determined. The specific range of the neighborhood of the non-isolated point noise pixel may be determined according to requirements.

[0086] In some embodiments, in step S502, the product of the difference (pp′) between the pixel value p of the non-isolated point noise pixel and the Gaussian mean and the sharpening strength s may be determined as an intermediate result.

[0087] In some embodiments, in step S503, the intermediate result may be added to the pixel value of the non-isolated point noise pixel to modify the pixel value of the non-isolated point noise pixel to obtain p+(pp′)*s. Further, the pixel value after enhancement may be obtained by truncating the image to a valid value domain according to the bit depth of the image (e.g., an 8-bit image).

[0088] According to some embodiments, multiple pixels may include multiple color components. Multiple color classifications may include three color components in the YUV color model, namely, brightness component Y, chrominance component U and chrominance component V, or three color components in the Lab color model, namely, brightness component L, color component a and color component b, or three color components in the RGB color model, namely, red R (Red), green G (Green) and blue B (Blue), or color components in other color models, which will not be described in detail here.

[0089] For an image to be processed having multiple color components, surface curvatures may be determined for different color components in step S202. That is, the surface curvatures of each of the multiple pixels may include multiple surface curvatures of each of the multiple pixels corresponding to the multiple color components. The surface curvature corresponding to each color component refers to the surface curvature corresponding to each pixel on a surface formed by the values ​​of the color component of multiple pixels in a space with pixel coordinates as x-axis and y-axis and the value of the color component as z-axis. Accordingly, the first preset curvature requirement may include multiple first preset curvature sub-requirements corresponding to the multiple color components.

[0090] In some embodiments, step S203, determining pixels among multiple pixels that meet the first preset curvature requirement as isolated point noise pixels may include: for each pixel among the multiple pixels, in response to determining that at least one color component of the pixel meets at least one corresponding first preset curvature sub-requirement, determining the pixel as an isolated point noise pixel.

[0091] Therefore, through the above method, isolated point noise pixels can be determined and denoised for different color components respectively, and different preset curvature requirements can be set for different color components, thereby achieving more refined denoising.

[0092] According to some embodiments, step S204, denoising isolated point noise pixels may include: for each color component of the isolated point noise pixel, in response to determining that the color component satisfies the corresponding first preset curvature sub-requirement, compensating the value of the color component so that the surface curvature corresponding to the compensated color component satisfies the second preset curvature sub-requirement corresponding to the color component.

[0093] Therefore, through the above method, compensation can be performed for each color component separately, thereby achieving more refined denoising.

[0094] In some embodiments, in step S204, for each color component (e.g., luminance component Y, chrominance component U, and chrominance component V), it may be determined whether the color component meets the corresponding first preset curvature sub-requirement. For example, it may be determined whether the surface curvature of the isolated point noise pixel in the luminance component Y meets the first preset curvature sub-requirement corresponding to the luminance component Y. If it does, it means that the value of the isolated point noise pixel in the luminance classification Y needs to be compensated. The compensation may be performed in the manner described above, that is, the value of the isolated point noise pixel in the luminance classification Y may be adjusted so that the surface curvature of the compensated isolated point noise pixel in the luminance component Y meets the second preset curvature sub-requirement corresponding to the luminance component Y. If the isolated point noise pixel does not meet the corresponding first preset curvature sub-requirement on multiple color components, the above compensation operation may be performed on these color components respectively.

[0095] In some embodiments, the second preset curvature sub-requirement corresponding to each color component may include that the surface curvature corresponding to the color component after compensation is zero. In other words, denoising the isolated point noise may include adjusting the values ​​of all color points of the isolated point noise pixels that do not meet the corresponding first preset curvature sub-requirement, so that the surface curvatures corresponding to these adjusted color classifications are all zero.

[0096] According to some embodiments, for each color component of a plurality of color components, the first preset curvature sub-requirement corresponding to the color component may include that the surface curvature corresponding to the color component of the corresponding pixel is greater than the preset surface curvature threshold corresponding to the color component. In other words, a corresponding preset surface curvature threshold may be set separately for each color component. For example, for the YUV color space, Y represents brightness, and U and V are used to distinguish different colors. Considering that the difference in brightness between a noise pixel and an adjacent non-noise pixel may be different from the difference in color between a noise pixel and an adjacent non-noise pixel, different preset surface curvature thresholds may be set for the three.

[0097] Therefore, by setting different preset surface curvature thresholds for different color components, more refined denoising is achieved.

[0098] According to another aspect of the present disclosure, an image processing device is provided. Figure 6 As shown, the device 600 includes: an acquisition unit 610, configured to acquire an image to be processed, wherein the image to be processed includes multiple pixels; a surface curvature determination unit 620, configured to determine the surface curvature of each of the multiple pixels; an isolated point noise pixel determination unit 630, configured to determine pixels among the multiple pixels that meet a first preset curvature requirement as isolated point noise pixels; and a denoising unit 640, configured to denoise the isolated point noise pixels.

[0099] It can be understood that the operations and effects of the acquisition unit 610 to the denoising unit 640 in the device 600 can refer to the above description of Figure 2 The description of steps S201 to S204 in the process will not be repeated here.

[0100] According to some embodiments, the denoising unit may be configured to compensate the pixel values ​​of the isolated point noise pixels so that the surface curvature of the compensated isolated point noise pixels meets a second preset curvature requirement.

[0101] According to some embodiments, the first preset curvature requirement may include that the surface curvature of the corresponding pixel is greater than a preset surface curvature threshold, and the second preset curvature requirement may include that the surface curvature of the compensated isolated point noise pixel is zero.

[0102] According to some embodiments, the image processing apparatus may further include: an enhancement unit configured to enhance the non-isolated point noise pixels among the plurality of pixels based on the surface curvature of the non-isolated point noise pixels.

[0103] According to some embodiments, the enhancement unit may include: a minimum curvature determination unit, configured to determine the minimum curvature of non-isolated point noise pixels and a first direction where the minimum curvature is located; a curvature contrast determination subunit, configured to determine the curvature contrast based on the curvature and the minimum curvature of the non-isolated point noise pixels in a second direction perpendicular to the first direction; a sharpening intensity determination subunit, configured to determine the sharpening intensity of the non-isolated point noise pixels based on the curvature contrast, and the sharpening intensity is positively correlated with the curvature contrast; and an enhancement subunit, configured to enhance the non-isolated point noise pixels based on the sharpening intensity.

[0104] According to some embodiments, the enhancement subunit may include: a Gaussian mean determination subunit, configured to determine the Gaussian mean within the neighborhood of non-isolated point noise pixels; an intermediate result determination subunit, configured to determine an intermediate result based on the difference between the pixel value of the non-isolated point noise pixel and the Gaussian mean and the sharpening intensity, the intermediate result being positively correlated with the difference, and the intermediate result being positively correlated with the sharpening intensity; and a modification subunit, configured to modify the pixel value of the non-isolated point noise pixel using the intermediate result, and truncate the modified pixel value to the valid value range.

[0105] According to some embodiments, each of the plurality of pixels may include a plurality of color components, the surface curvatures of each of the plurality of pixels may include a plurality of surface curvatures of each of the plurality of pixels corresponding to the plurality of color components, respectively, and the first preset curvature requirement may include a plurality of first preset curvature sub-requirements corresponding to the plurality of color components, respectively. The isolated point noise pixel determination unit may be configured to, for each of the plurality of pixels, determine the pixel as an isolated point noise pixel in response to determining that at least one color component of the pixel satisfies the corresponding at least one first preset curvature sub-requirement.

[0106] According to some embodiments, the denoising unit may be configured to compensate for the value of each color component of the isolated point noise pixel in response to determining that the color component satisfies a corresponding first preset curvature sub-requirement, so that the surface curvature corresponding to the compensated color component satisfies a second preset curvature sub-requirement corresponding to the color component.

[0107] According to some embodiments, for each color component of the plurality of color components, the first preset curvature sub-requirement corresponding to the color component may include that a surface curvature corresponding to the color component of a corresponding pixel is greater than a preset surface curvature threshold corresponding to the color component.

[0108] In the technical solution of the present disclosure, the collection, storage, use, processing, transmission, provision and disclosure of user personal information involved are in compliance with the provisions of relevant laws and regulations and do not violate public order and good morals.

[0109] According to an embodiment of the present disclosure, an electronic device, a readable storage medium and a computer program product are also provided.

[0110] refer to Figure 7 , a block diagram of an electronic device 700 that can be used as a server or client of the present disclosure will now be described, which is an example of a hardware device that can be applied to various aspects of the present disclosure. The electronic device is intended to represent various forms of digital electronic computer devices, such as laptop computers, desktop computers, workbenches, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital assistants, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present disclosure described and / or required herein.

[0111] like Figure 7 As shown, the device 700 includes a computing unit 701, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 702 or a computer program loaded from a storage unit 708 into a random access memory (RAM) 703. In the RAM 703, various programs and data required for the operation of the device 700 can also be stored. The computing unit 701, the ROM 702, and the RAM 703 are connected to each other via a bus 704. An input / output (I / O) interface 705 is also connected to the bus 704.

[0112] Multiple components in the device 700 are connected to the I / O interface 705, including: an input unit 706, an output unit 707, a storage unit 708, and a communication unit 709. The input unit 706 can be any type of device that can input information to the device 700. The input unit 706 can receive input digital or character information, and generate key signal input related to user settings and / or function control of the electronic device, and can include but is not limited to a mouse, a keyboard, a touch screen, a trackpad, a trackball, a joystick, a microphone and / or a remote control. The output unit 707 can be any type of device that can present information, and can include but is not limited to a display, a speaker, a video / audio output terminal, a vibrator and / or a printer. The storage unit 708 can include but is not limited to a disk, an optical disk. The communication unit 709 allows the device 700 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks, and can include but is not limited to a modem, a network card, an infrared communication device, a wireless communication transceiver and / or a chipset, such as Bluetooth TM devices, 802.11 devices, WiFi devices, WiMax devices, cellular communication devices, and / or the like.

[0113] The computing unit 701 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the computing unit 701 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning network algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 701 performs the various methods and processes described above, such as image processing methods. For example, in some embodiments, the image processing method may be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as a storage unit 708. In some embodiments, part or all of the computer program may be loaded and / or installed on the device 700 via ROM 702 and / or communication unit 709. When the computer program is loaded into RAM 703 and executed by the computing unit 701, one or more steps of the image processing method described above may be performed. Alternatively, in other embodiments, the computing unit 701 may be configured to perform the image processing method in any other appropriate manner (e.g., by means of firmware).

[0114] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0115] The program code for implementing the method of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that the program code, when executed by the processor or controller, enables the functions / operations specified in the flow chart and / or block diagram to be implemented. The program code may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.

[0116] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0117] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).

[0118] The systems and techniques described herein may be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), and the Internet.

[0119] A computer system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The relationship between the client and the server is generated by computer programs running on the corresponding computers and having a client-server relationship with each other. The server may be a cloud server, also known as a cloud computing server or a cloud host, which is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and VPS services ("Virtual Private Server", or "VPS" for short). The server may also be a server for a distributed system, or a server combined with a blockchain.

[0120] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps described in this disclosure can be performed in parallel, sequentially or in different orders, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved, and this document does not limit this.

[0121] Although the embodiments or examples of the present disclosure have been described with reference to the accompanying drawings, it should be understood that the above-mentioned methods, systems and devices are merely exemplary embodiments or examples, and the scope of the present invention is not limited by these embodiments or examples, but only by the claims after authorization and their equivalent scope. Various elements in the embodiments or examples can be omitted or replaced by their equivalent elements. In addition, each step can be performed in an order different from that described in the present disclosure. Further, the various elements in the embodiments or examples can be combined in various ways. It is important that with the evolution of technology, many elements described herein can be replaced by equivalent elements that appear after the present disclosure.

Claims

1. An image processing method, comprising: Acquire an image to be processed, where the image to be processed includes a plurality of pixels; Determining a surface curvature of each of the plurality of pixels; Determine pixels among the plurality of pixels that meet a first preset curvature requirement as isolated point noise pixels; as well as De-noising is performed on the isolated point noise pixels.

2. The method according to claim 1, wherein: De-noising the isolated point noise pixels includes: The pixel value of the isolated point noise pixel is compensated so that the surface curvature of the compensated isolated point noise pixel meets a second preset curvature requirement.

3. The method according to claim 2, wherein: The second preset curvature requirement includes that the surface curvature of the compensated isolated point noise pixels is zero.

4. The method according to any one of claims 1 to 3, wherein: The first preset curvature requirement includes that the surface curvature of the corresponding pixel is greater than a preset surface curvature threshold.

5. The method according to any one of claims 1 to 3, wherein: The plurality of pixels each include a plurality of color components, the surface curvatures of the plurality of pixels each include a plurality of surface curvatures of the plurality of pixels each corresponding to the plurality of color components, the first preset curvature requirement includes a plurality of first preset curvature sub-requirements each corresponding to the plurality of color components, The step of determining the pixels among the plurality of pixels that meet the first preset curvature requirement as isolated point noise pixels comprises: For each pixel among the plurality of pixels, in response to determining that at least one color component of the pixel satisfies the corresponding at least one first preset curvature sub-requirement, the pixel is determined to be an isolated point noise pixel.

6. The method according to claim 5, wherein: De-noising the isolated point noise pixels includes: For each color component of the isolated point noise pixel, in response to determining that the color component satisfies the corresponding first preset curvature sub-requirement, the value of the color component is compensated so that the surface curvature corresponding to the compensated color component satisfies the second preset curvature sub-requirement corresponding to the color component.

7. The method according to claim 5, wherein: For each color component of the multiple color components, the first preset curvature sub-requirement corresponding to the color component includes that the surface curvature corresponding to the color component of the corresponding pixel is greater than a preset surface curvature threshold corresponding to the color component.

8. The method according to any one of claims 1 to 3, further comprising: Based on the surface curvature of the non-isolated point noise pixels among the multiple pixels, the non-isolated point noise pixels are enhanced.

9. The method according to claim 8, wherein: Based on the surface curvature of the non-isolated point noise pixels among the multiple pixels, enhancing the non-isolated point noise pixels comprises: Determine the minimum curvature of the non-isolated point noise pixel and the first direction where the minimum curvature is located; Determining a curvature contrast based on the curvature of the non-isolated point noise pixel in a second direction perpendicular to the first direction and the minimum curvature; Based on the curvature contrast, determining the sharpening intensity of the non-isolated point noise pixel, wherein the sharpening intensity is positively correlated with the curvature contrast; and The non-isolated point noise pixels are enhanced based on the sharpening strength.

10. The method according to claim 9, wherein: Enhancing the non-isolated point noise pixel based on the sharpening strength includes: Determining the Gaussian mean within the neighborhood of the non-isolated point noise pixel; Determine an intermediate result based on a difference between a pixel value of the non-isolated point noise pixel and the Gaussian mean and the sharpening strength, wherein the intermediate result is positively correlated with the difference, and the intermediate result is positively correlated with the sharpening strength; and The pixel value of the non-isolated point noise pixel is modified using the intermediate result, and the modified pixel value is truncated to a valid value range.

11. An image processing device, comprising: An acquisition unit is configured to acquire an image to be processed, wherein the image to be processed includes a plurality of pixels; a surface curvature determination unit, configured to determine the surface curvature of each of the plurality of pixels; an isolated point noise pixel determining unit, configured to determine pixels among the plurality of pixels that meet a first preset curvature requirement as isolated point noise pixels; as well as The denoising unit is configured to denoise the isolated point noise pixels.

12. The device according to claim 11, wherein The denoising unit is configured to compensate the pixel value of the isolated point noise pixel so that the surface curvature of the compensated isolated point noise pixel meets a second preset curvature requirement.

13. The device according to claim 12, wherein: The first preset curvature requirement includes that the surface curvature of the corresponding pixel is greater than a preset surface curvature threshold, and the second preset curvature requirement includes that the surface curvature of the compensated isolated point noise pixel is zero.

14. The device according to any one of claims 11 to 13, wherein: The plurality of pixels each include a plurality of color components, the surface curvatures of the plurality of pixels each include a plurality of surface curvatures of the plurality of pixels each corresponding to the plurality of color components, the first preset curvature requirement includes a plurality of first preset curvature sub-requirements each corresponding to the plurality of color components, The isolated point noise pixel determination unit is configured to determine, for each of the multiple pixels, a pixel as an isolated point noise pixel in response to determining that at least one color component of the pixel satisfies at least one corresponding first preset curvature sub-requirement, wherein, for each color component of the multiple color components, the first preset curvature sub-requirement corresponding to the color component includes that the surface curvature corresponding to the color component of the corresponding pixel is greater than a preset surface curvature threshold corresponding to the color component.

15. The device according to claim 14, wherein: The denoising unit is configured to compensate the value of each color component of the isolated point noise pixel in response to determining that the color component satisfies the corresponding first preset curvature sub-requirement, so that the surface curvature corresponding to the compensated color component satisfies the second preset curvature sub-requirement corresponding to the color component.

16. The apparatus according to any one of claims 11 to 13, further comprising: The enhancement unit is configured to enhance the non-isolated point noise pixels among the multiple pixels based on the surface curvature of the non-isolated point noise pixels.

17. The device according to claim 16, wherein: The enhancement unit comprises: A minimum curvature determining unit, configured to determine the minimum curvature of the non-isolated point noise pixel and a first direction where the minimum curvature is located; a curvature contrast determination subunit, configured to determine a curvature contrast based on a curvature of the non-isolated point noise pixel in a second direction perpendicular to the first direction and the minimum curvature; a sharpening strength determination subunit, configured to determine the sharpening strength of the non-isolated point noise pixel based on the curvature contrast, wherein the sharpening strength is positively correlated with the curvature contrast; and An enhancement subunit is configured to enhance the non-isolated point noise pixel based on the sharpening strength, wherein the enhancement subunit includes: A Gaussian mean determination subunit, configured to determine the Gaussian mean in the neighborhood of the non-isolated point noise pixel; an intermediate result determination subunit, configured to determine an intermediate result based on a difference between a pixel value of the non-isolated point noise pixel and the Gaussian mean and the sharpening strength, wherein the intermediate result is positively correlated with the difference, and the intermediate result is positively correlated with the sharpening strength; and The modification subunit is configured to modify the pixel value of the non-isolated point noise pixel using the intermediate result, and truncate the modified pixel value to a valid value range.

18. An electronic device comprising: at least one processor; as well as a memory communicatively coupled to the at least one processor; in The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 10.

19. A non-transitory computer-readable storage medium storing computer instructions, wherein: The computer instructions are used to cause the computer to execute the method according to any one of claims 1-10.

20. A computer program product comprising a computer program, wherein: When the computer program is executed by a processor, the method according to any one of claims 1 to 10 is implemented.

Citation Information

Patent Citations

  • Document image processing method and device

    CN110942435A

  • Image processing method and device, computer readable storage medium and electronic equipment

    CN111091513A

  • Image processing method and device, electronic equipment and storage medium

    CN114066738A

  • Image enhancement method and device based on artificial intelligence, equipment and storage medium

    CN115311161A

  • Image processor, image processing method, and image processing program

    JP2014023566A