7#include <memory_resource>
8#include <nk/value/fn_handle.hpp>
9#include <nk/value/value.hpp>
49Value strel(
const std::string &shape,
const std::vector<double> ¶ms,
50 const Value &arbitrary_nhood,
51 std::pmr::memory_resource *mr =
nullptr);
65 std::pmr::memory_resource *mr =
nullptr);
78 std::pmr::memory_resource *mr =
nullptr);
86 std::pmr::memory_resource *mr =
nullptr);
94 std::pmr::memory_resource *mr =
nullptr);
113 std::pmr::memory_resource *mr =
nullptr);
127 std::pmr::memory_resource *mr =
nullptr);
141 std::pmr::memory_resource *mr =
nullptr);
154 std::pmr::memory_resource *mr =
nullptr);
168 std::pmr::memory_resource *mr =
nullptr);
179 std::pmr::memory_resource *mr =
nullptr);
193 std::pmr::memory_resource *mr =
nullptr);
206 std::pmr::memory_resource *mr =
nullptr);
221 std::pmr::memory_resource *mr =
nullptr);
235 std::pmr::memory_resource *mr =
nullptr);
245 std::pmr::memory_resource *mr =
nullptr);
258 std::pmr::memory_resource *mr =
nullptr);
270 std::pmr::memory_resource *mr =
nullptr);
288 std::pmr::memory_resource *mr =
nullptr);
313 std::pmr::memory_resource *mr =
nullptr);
329 std::pmr::memory_resource *mr =
nullptr);
348 std::pmr::memory_resource *mr =
nullptr);
375 std::pmr::memory_resource *mr =
nullptr);
406 std::pmr::memory_resource *mr =
nullptr);
421 std::pmr::memory_resource *mr =
nullptr);
447 std::pmr::memory_resource *mr =
nullptr);
484 const std::string &fstep,
int conn,
485 std::size_t m,
const std::string &dir,
486 std::pmr::memory_resource *mr =
nullptr);
Core MATLAB-compatible multidimensional array and scalar value type.
Value imbothat(const Value &I, const Value &SE, std::pmr::memory_resource *mr=nullptr)
Black top-hat (J = imbothat(I, SE) = imclose(I, SE) - I).
Value imfill_holes(const Value &BW, int conn, std::pmr::memory_resource *mr=nullptr)
Fill holes in a binary image (J = imfill(BW, 'holes', conn)).
Value imregionalmax(const Value &I, int conn, std::pmr::memory_resource *mr=nullptr)
Regional maxima mask (J = imregionalmax(I, conn)).
Value imclose(const Value &I, const Value &SE, std::pmr::memory_resource *mr=nullptr)
Morphological closing (J = imclose(I, SE) = imerode(imdilate(I, SE), SE)).
Value bwmorph(const Value &BW, const std::string &op, int n, std::pmr::memory_resource *mr=nullptr)
Composite binary morphological operations (J = bwmorph(BW, op, n)).
Value bwpack(const Value &BW, std::pmr::memory_resource *mr=nullptr)
Pack a binary image into UINT32 columns (BWP = bwpack(BW)).
Value imhmin(const Value &I, double h, int conn, std::pmr::memory_resource *mr=nullptr)
H-minima transform (J = imhmin(I, h, conn)) — dual of imhmax.
Value makelut(FnHandle fun, int n, std::pmr::memory_resource *mr=nullptr)
Build a lookup table for bwlookup (lut = makelut(fun, n)).
Value imextendedmax(const Value &I, double h, int conn, std::pmr::memory_resource *mr=nullptr)
Extended-maxima transform (J = imextendedmax(I, h, conn)).
Value imclearborder(const Value &BW, int conn, std::pmr::memory_resource *mr=nullptr)
Remove border-touching components (J = imclearborder(BW, conn)).
Value bwunpack(const Value &BWP, size_t M, std::pmr::memory_resource *mr=nullptr)
Unpack a UINT32 binary image (BW = bwunpack(BWP, M)).
Value bwlookup(const Value &BW, const Value &lut, std::pmr::memory_resource *mr=nullptr)
Nonlinear neighbourhood filter via lookup table (A = bwlookup(BW, lut)).
Value bwtraceboundary(const Value &BW, const Value &P, const std::string &fstep, int conn, std::size_t m, const std::string &dir, std::pmr::memory_resource *mr=nullptr)
Trace object boundary in a binary image (B = bwtraceboundary(BW, P, fstep, conn, m,...
Value bwhitmiss(const Value &BW, const Value &se1, const Value &se2, std::pmr::memory_resource *mr=nullptr)
Binary hit-or-miss transform (J = bwhitmiss(BW, se1, se2)).
Value applylut(const Value &BW, const Value &LUT, std::pmr::memory_resource *mr=nullptr)
Neighbourhood-LUT filter (A = applylut(BW, LUT)).
Value imtophat(const Value &I, const Value &SE, std::pmr::memory_resource *mr=nullptr)
White top-hat (J = imtophat(I, SE) = I - imopen(I, SE)).
Value imregionalmin(const Value &I, int conn, std::pmr::memory_resource *mr=nullptr)
Regional minima mask (J = imregionalmin(I, conn)).
Value imimposemin(const Value &I, const Value &BW, int conn, std::pmr::memory_resource *mr=nullptr)
Minima imposition (J = imimposemin(I, BW, conn)).
Value imreconstruct(const Value &marker, const Value &mask, int conn, std::pmr::memory_resource *mr=nullptr)
Morphological reconstruction by dilation (J = imreconstruct(marker, mask, conn)).
Value strel(const std::string &shape, const std::vector< double > ¶ms, const Value &arbitrary_nhood, std::pmr::memory_resource *mr=nullptr)
Build a 2-D structuring element (SE = strel(shape, params, arbitrary_nhood)).
Value imhmax(const Value &I, double h, int conn, std::pmr::memory_resource *mr=nullptr)
H-maxima transform (J = imhmax(I, h, conn)).
Value imkeepborder(const Value &BW, int conn, std::pmr::memory_resource *mr=nullptr)
Keep only border-touching components (J = imkeepborder(BW, conn)) — dual of imclearborder.
Value imextendedmin(const Value &I, double h, int conn, std::pmr::memory_resource *mr=nullptr)
Extended-minima transform (J = imextendedmin(I, h, conn)).
Value imdilate(const Value &I, const Value &SE, std::pmr::memory_resource *mr=nullptr)
Grayscale dilation (J = imdilate(I, SE)).
Value imopen(const Value &I, const Value &SE, std::pmr::memory_resource *mr=nullptr)
Morphological opening (J = imopen(I, SE) = imdilate(imerode(I, SE), SE)).
Value bwmorph3(const Value &V, const std::string &op, std::pmr::memory_resource *mr=nullptr)
Morphological operations on a binary volume (J = bwmorph3(V, operation)).
Value mmgradm(const Value &I, const Value &se_dil, const Value &se_ero, std::pmr::memory_resource *mr=nullptr)
Morphological gradient (G = mmgradm(I, se_dil, se_ero)).
Value imerode(const Value &I, const Value &SE, std::pmr::memory_resource *mr=nullptr)
Grayscale erosion (J = imerode(I, SE)).