# Deconvolution

This function block is used for enhancing image quality, particularly for images containing high-speed objects. It applies deconvolution techniques to improve visibility and detail in captured images.

## 📥 Inputs <a href="#inputs" id="inputs"></a>

`Image Any` The input image that you want to enhance using deconvolution techniques.

## 📤 Outputs <a href="#outputs" id="outputs"></a>

`Image Any` The output is the enhanced version of the input image after applying deconvolution.

## 🕹️ Controls <a href="#controls" id="controls"></a>

`Angle` A slider to adjust the angle for deconvolution processing. Values can range from 0 to 180 degrees.

`Diameter` A slider to set the diameter for the deconvolution process, with values ranging from 1 to 50.

`Noise Reduction` A slider that adjusts the level of noise reduction applied during the deconvolution process. Values can range from 0 to 50.

## 🎨 Features <a href="#features" id="features"></a>

`Multi-channel Processing` The block effectively handles multi-channel images (e.g., RGB) by applying deconvolution to each channel separately.

`Dynamic Parameter Adjustment` Users can adjust parameters in real time using sliders to optimize the deconvolution process according to their needs.

## 📝 Usage Instructions <a href="#usage" id="usage"></a>

1. **Connect Input Image**: Attach any image you want to enhance to the `Image Any` input.
2. **Adjust Parameters**: Use the sliders to set the desired `Angle`, `Diameter`, and `Noise Reduction` levels for the deconvolution process.
3. **Evaluate the Block**: Run the block to apply deconvolution, and observe the resulting enhanced image.

## 📊 Evaluation <a href="#evaluation" id="evaluation"></a>

When executed, this function block processes the input image through the deconvolution algorithm, outputting an enhanced version that reveals finer details.

## 💡 Tips and Tricks <a href="#tips-and-tricks" id="tips-and-tricks"></a>

<details>

<summary>Fine-tuning Parameters</summary>

Experiment with different settings on the sliders to find the optimal parameters for your specific image. Adjusting the `Noise Reduction` can make a significant difference in the resulting image clarity.

</details>

<details>

<summary>Handling High-Speed Objects</summary>

For images with high-speed object motion, ensure that the parameters, particularly `Angle` and `Noise Reduction`, are set based on the direction of motion for best results.

</details>

<details>

<summary>Previewing Changes</summary>

If available, connect the output to the `Show Image` block to visualize enhancements in real-time as you modify slider values.

</details>

## 🛠️ Troubleshooting <a href="#troubleshooting" id="troubleshooting"></a>

<details>

<summary>Output Image is Unclear</summary>

If the output image does not meet expectations, try modifying the `Noise Reduction` parameter or adjusting the `Angle` to better suit the specific motion dynamics within the image.

</details>

<details>

<summary>Application Errors</summary>

Ensure that the input image is properly formatted and connected. Check all sliders to ensure their values are within the permitted ranges.

</details>
