# OceanColorData.jl

This package is at a very early stage of development. Stay tuned ...

OceanColorData.FuzzyClassificationMethod
FuzzyClassification(M,Sinv,Rrs)

Apply fuzzy membership classifier (M + Sinv) to a vector of remotely sensed reflectcances (Rrs) and returns a membership vector (values between 0 and 1).

source
OceanColorData.Jackson2017Method
Jackson2017()

Fuzzy logic classifiers defined in Moore et al 2009 and Jackson et al 2017 can be used to assign optical class memberships from an Rrs vector. This function provides vector M and inverse matrix Sinv for the Jackson et al 2017 classifier.

Credits: T. Jackson kindly provided the J17.nc classifier file

source
OceanColorData.RemotelySensedReflectanceMethod
RemotelySensedReflectance(rirr_in,wvbd_in,wvbd_out)

Compute remotely sensed reflectance at wvbdout from irradiance reflectance at wvbdin.

wvbd_out=Float64.([412, 443, 490, 510, 555, 670])
wvbd_in=Float64.([400,425,450,475,500,525,550,575,600,625,650,675,700])
rirr_in=1e-3*[23.7641,26.5037,27.9743,30.4914,28.1356,
21.9385,18.6545,13.5100,5.6338,3.9272,2.9621,2.1865,1.8015]

rrs_out=RemotelySensedReflectance(rirr_in,wvbd_in,wvbd_out)

using Plots
plot(vec(rrs_out),linewidth=4,lab="recomputed RRS")
rrs_ref=1e-3*[4.4099, 4.8533, 5.1247, 4.5137, 3.0864, 0.4064]
plot!(rrs_ref,linewidth=4,ls=:dash,lab="reference result")
source
OceanColorData.RrsToChlaMethod
RrsToChla(Rrs; Eqn="OC4")

Satellite Chl_a estimates typicaly derive from remotely sensed reflectances using the blue/green reflectance ratio method and a polynomial formulation.

wvbd_out=Float64.([412, 443, 490, 510, 555, 670])
wvbd_in=Float64.([400,425,450,475,500,525,550,575,600,625,650,675,700])
rirr_in=1e-3*[23.7641,26.5037,27.9743,30.4914,28.1356,
21.9385,18.6545,13.5100,5.6338,3.9272,2.9621,2.1865,1.8015]

rrs_out=RemotelySensedReflectance(rirr_in,wvbd_in,wvbd_out)
chla_out=RrsToChla(rrs_out)
source