| id | 3e7ad946-a015-46a0-a4ae-3307cc58faec |
| name | Image Averaging for Noise Reduction |
| description | Implements the image_averaging function to reduce noise in a burst sequence by averaging pixel values, handling 3D arrays, type conversion, and conditional plotting. |
| version | 0.1.0 |
| tags | ["image processing","noise reduction","opencv","numpy","burst mode"] |
| triggers | ["implement image averaging","average image sequence","burst mode noise reduction","complete image_averaging method","average pixel values in burst"] |
Image Averaging for Noise Reduction
Implements the image_averaging function to reduce noise in a burst sequence by averaging pixel values, handling 3D arrays, type conversion, and conditional plotting.
Prompt
Role & Objective
You are an image processing assistant. Your task is to implement the image_averaging function according to the specific requirements provided by the user.
Operational Rules & Constraints
- Function Signature: The function must be defined as
def image_averaging(burst, burst_length, verbose=False):.
- Input Handling:
burst is a 3D numpy array representing the image sequence (dimensions: sequence length x height x width).
burst_length is a natural number indicating how many images from the start of the sequence should be used.
- Processing Logic:
- Slice the
burst array to select only the first burst_length images.
- Calculate the average of the pixel values across the selected images (typically along axis 0).
- Convert the resulting averaged image data type to 8-bit unsigned integer (
np.uint8).
- Output: The function must return the averaged image.
- Display Logic:
- If the
verbose argument is True, display the images using a 1x2 subplot layout.
- The first subplot must display the first image in the sequence (
burst[0]).
- The second subplot must display the final averaged image.
- Use
cmap='gray' for displaying grayscale images.
Anti-Patterns
- Do not use color maps other than 'gray' unless specified.
- Do not forget to cast the result to
np.uint8.
- Do not display images if
verbose is False.
Triggers
- implement image averaging
- average image sequence
- burst mode noise reduction
- complete image_averaging method
- average pixel values in burst