Noise.jl
Использование
В настоящее время никакие методы не работают "на месте", а всегда возвращают новый массив. В общем случае, если методу будут переданы изображения типа Array{RGB{<:Normed}
Array{Gray{<:Normed}}
, то будет возвращено новое изображение с тем же типом. Методы также работают для обычных массивов типа Array{<:Number}
. На данный момент возможны три различных типа шума: Аддитивный белый гауссовский шум, шум «соль и перец» и шум Пуассона.
using Noise, TestImages, Images, Plots
img = testimage("fabio_gray_256")
img_color = testimage("fabio_color_256")
img_gray_gauss = add_gauss(img, 0.1)
img_color_gauss = add_gauss(img_color, 0.1)
img_gray_sp = salt_pepper(img, 0.1)
# одномерный массив
x = LinRange(0.0, 10.0, 300)
y = sin.(x)
# небольшой шум
y_noise = add_gauss(y, 0.1)
qt.qpa.xcb: could not connect to display qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found. This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem. Available platform plugins are: linuxfb, minimal, offscreen, vnc, xcb. Aborted connect: Connection refused GKS: can't connect to GKS socket application GKS: Open failed in routine OPEN_WS GKS: GKS not in proper state. GKS must be either in the state WSOP or WSAC in routine ACTIVATE_WS
На левом сером изображении присутствует гауссовский шум со стандартным отклонением . На изображении в центре мы добавили гауссовский шум с тем же стандартным отклонением, но к каждому отдельному цветовому пикселю, что позволило получить вид цвета с колебаниями. На изображении справа присутствует шум соли и перца с вероятностью .
Серое изображение с шумом | RGB-изображение с шумом | Серое изображение с шумом соли и перца |
---|---|---|
Этот одномерный массив подвержен воздействию аддитивного гауссовского белого шума ( ).
Разработка
Разработка пакета ведется на сайте GitHub. Вы можете отправлять сообщения об ошибках, предлагать новые типы шумов с помощью запросов на вытягивание и вносить предложения. Мы будем рады узнать о новых типах шума, которые также могут быть очень специфичными для некоторых приложений. Цель состоит в том, чтобы предоставить Noise.jl
центральный пакет, который можно использовать во многих различных сферах — от биологии до астрономии и электротехники.