diff --git a/docs/examples/color_channels/rgb_grayscale.jl b/docs/examples/color_channels/rgb_grayscale.jl index 07593cdb..396eecdd 100644 --- a/docs/examples/color_channels/rgb_grayscale.jl +++ b/docs/examples/color_channels/rgb_grayscale.jl @@ -19,4 +19,5 @@ mosaicview(rgb_image, gray_image; nrow = 1) # [Rec. ITU-R BT.601-7](https://www.itu.int/dms_pubrec/itu-r/rec/bt/R-REC-BT.601-7-201103-I!!PDF-E.pdf) rounding off to 3 decimal places # `0.299 * R + 0.587 * G + 0.114 * B` +using FileIO #src save("assets/rgb_grayscale.png", gray_image) #src diff --git a/docs/examples/filters_and_restorations/inpainting.jl b/docs/examples/filters_and_restorations/inpainting.jl new file mode 100644 index 00000000..2a73c4ca --- /dev/null +++ b/docs/examples/filters_and_restorations/inpainting.jl @@ -0,0 +1,42 @@ +# --- +# title: Image Inpainting +# cover: assets/inpainting.png +# --- + +# This demo illustrates the use of [image inpainting](https://github.com/JuliaImages/ImageInpainting.jl) algorithm in JuliaImages. + +# Inpainting is the process of constructing lost or deteriorated parts of an +# image or video. It is also used for removing undesired elements from a scene. +# +# The basic idea of inpainting is: Replace those bad marks (or undesired elements) with its +# neighbouring pixels so that it looks like the neighbourhood. + +# In this demo we will be removing an undesired element form an image. + +using ImageInpainting, TestImages, ImageCore + +img = Float64.(Gray.(testimage("lighthouse"))); +Gray.(img) + +# Create a mask of same size as of image +mask = falses(size(img)); + +# pixels where mask is set to true will be inpainted +mask[50:350,300:400] .= true; +Gray.(mask) + +# inpaint take the parametes image, mask and algorithm. +# We will be using Criminisi [1] algorithm +out = inpaint(img, mask, Criminisi(30,30)); + +mosaicview(Gray.(img), Gray.(mask), Gray.(out); nrow = 1) + +# Note: Currently, ImageInpainting.jl only supports 2D images +# ### References +# [1] Criminisi, A., Pérez, P., Toyama, K., 2004. Region Filling +# and Object Removal by Examplar-based Image Inpainting. + +# --- save covers --- #src +using FileIO #src +save("assets/inpainting.png", mosaicview(Gray.(img), Gray.(out); nrow = 1)) #src + diff --git a/docs/examples/spatial_transformation/histogram_equalization.jl b/docs/examples/spatial_transformation/histogram_equalization.jl index c3aad1e8..b31fc0b8 100644 --- a/docs/examples/spatial_transformation/histogram_equalization.jl +++ b/docs/examples/spatial_transformation/histogram_equalization.jl @@ -3,7 +3,7 @@ # cover: assets/histogram_equalization.png # --- -# This demo issustrates the use of [Histogram equalization](https://juliaimages.org/ImageContrastAdjustment.jl/stable/reference/#Equalization-1), [gamma correction matching](https://juliaimages.org/ImageContrastAdjustment.jl/stable/reference/#Matching-1) +# This demo illustrates the use of [Histogram equalization](https://juliaimages.org/ImageContrastAdjustment.jl/stable/reference/#Equalization-1), [gamma correction matching](https://juliaimages.org/ImageContrastAdjustment.jl/stable/reference/#Matching-1) # and [Contrast Limited Adaptive Histogram Equalization](https://juliaimages.org/ImageContrastAdjustment.jl/stable/reference/#AdaptiveEqualization-1) # Histogram equalisation is used to imporve the contrast in an