{
  "_id": "6ae6b1f02e87f76f20acc1e6",
  "Package": "MatchingPursuit",
  "Type": "Package",
  "Title": "Sparse Time Series Decomposition Using Matching Pursuit and\nOrthogonal Matching Pursuit",
  "Version": "1.4.0",
  "Authors@R": "c(\nperson(\n\"Artur\", \"Gramacki\",\nrole = c(\"aut\",\"cre\"),\ncomment = c(ORCID = \"0000-0002-1610-9743\"),\nemail = \"a.gramacki@gmail.com\"),\nperson(\n\"Jarosław\", \"Gramacki\",\nrole = c(\"ctb\"),\ncomment = c(ORCID = \"0000-0001-5032-1353\"),\nemail = \"j.gramacki@gmail.com\"),\nperson(\n\"Piotr T.\", \"Różański\",\nrole = c(\"ctb\"),\ncomment = c(ORCID = \"0000-0002-0457-6731\", \"provided technical guidance on the operation of the EMPI software\"),\nemail = \"piotr@develancer.pl\")\n)",
  "Maintainer": "Artur Gramacki <a.gramacki@gmail.com>",
  "Description": "Provides tools for analysing and decomposing time series\ndata using the Matching Pursuit (MP) algorithm, a greedy signal\ndecomposition technique that represents complex signals as a\nlinear combination of simpler functions (called atoms) selected\nfrom a redundant dictionary. Support for the Orthogonal\nMatching Pursuit (OMP) variant of the classical MP algorithm is\nalso provided. For more details see Mallat and Zhang (1993)\n<doi:10.1109/78.258082>, Pati et al. (1993)\n<doi:10.1109/ACSSC.1993.342465>, Elad (2010)\n<doi:10.1007/978-1-4419-7011-4> and Różański (2024)\n<doi:10.1145/3674832>.",
  "SystemRequirements": "external tool (installed via empi_install()\nfunction). The package uses the implementation of the Matching\nPursuit algorithm (Enhanced Matching Pursuit Implementation;\nEMPI) by Piotr T. Różański, available at\nhttps://github.com/develancer/empi.",
  "VignetteBuilder": "knitr",
  "License": "GPL-3",
  "BugReports": "https://github.com/artur-gramacki/MatchingPursuit/issues",
  "Encoding": "UTF-8",
  "RoxygenNote": "7.3.3",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-11-01 03:24:02 UTC",
    "User": "root"
  },
  "Config/pak/sysreqs": "cmake libfftw3-dev libgdal-dev gdal-bin libgeos-dev\nlibglpk-dev make libicu-dev libjpeg-dev libpng-dev libtiff-dev\nlibuv1-dev libxml2-dev libproj-dev libsqlite3-dev libx11-dev",
  "Repository": "https://artur-gramacki.r-universe.dev",
  "Date/Publication": "2026-10-31 23:46:19 UTC",
  "RemoteUrl": "https://github.com/artur-gramacki/matchingpursuit",
  "RemoteRef": "HEAD",
  "RemoteSha": "618efbf2ef9ff92efcce3736b5990d904597d30c",
  "Author": "Artur Gramacki [aut, cre] (ORCID:\n<https://orcid.org/0000-0002-1610-9743>),\nJarosław Gramacki [ctb] (ORCID:\n<https://orcid.org/0000-0001-5032-1353>),\nPiotr T. Różański [ctb] (ORCID:\n<https://orcid.org/0000-0002-0457-6731>, provided technical\nguidance on the operation of the EMPI software)",
  "_user": "artur-gramacki",
  "_type": "src",
  "_file": "MatchingPursuit_1.4.0.tar.gz",
  "_fileid": "https://r2.ropensci.org/a76264cd65269a49981eba836a82259254e17790e921886c712093dd981dfd44",
  "_filesize": 6257930,
  "_sha256": "a76264cd65269a49981eba836a82259254e17790e921886c712093dd981dfd44",
  "_expires": "2027-02-09T03:28:46.000Z",
  "_created": "2026-11-01T03:24:02.000Z",
  "_published": "2026-11-01T03:28:48.103Z",
  "_upstream": "https://github.com/artur-gramacki/matchingpursuit",
  "_status": "success",
  "_maintainer": {
    "name": "Artur Gramacki",
    "email": "a.gramacki@gmail.com",
    "login": "artur-gramacki",
    "description": "",
    "uuid": 89815117,
    "orcid": "0000-0002-1610-9743"
  },
  "_jobs": [
    {
      "job": 124737820527,
      "time": 176,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "13068274848"
    },
    {
      "job": 124737820505,
      "time": 163,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "13068238335"
    },
    {
      "job": 124737820577,
      "time": 243,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "13068980283"
    },
    {
      "job": 124737820622,
      "time": 157,
      "config": "macos-release-arm64",
      "r": "4.6.2",
      "check": "OK",
      "artifact": "13068935372"
    },
    {
      "job": 124737014542,
      "time": 245,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "13068179818"
    },
    {
      "job": 124737820500,
      "time": 127,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "13068279728"
    },
    {
      "job": 124737820530,
      "time": 146,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "13067868821"
    },
    {
      "job": 124737820631,
      "time": 128,
      "config": "windows-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "13068955287"
    },
    {
      "job": 124737820551,
      "time": 114,
      "config": "windows-release-x86_64",
      "r": "4.6.2",
      "check": "OK",
      "artifact": "13068556696"
    }
  ],
  "_buildurl": "https://github.com/r-universe/artur-gramacki/actions/runs/41268744673",
  "_commit": {
    "id": "618efbf2ef9ff92efcce3736b5990d904597d30c",
    "author": "Artur Gramacki <89815117+artur-gramacki@users.noreply.github.com>",
    "committer": "Artur Gramacki <89815117+artur-gramacki@users.noreply.github.com>",
    "message": "file changed\n",
    "time": 1793490379
  },
  "_distro": "resolute",
  "_host": "GitHub-Actions",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 4.0.0",
      "role": "Depends"
    },
    {
      "package": "edf",
      "role": "Imports"
    },
    {
      "package": "signal",
      "role": "Imports"
    },
    {
      "package": "RSQLite",
      "role": "Imports"
    },
    {
      "package": "imager",
      "role": "Imports"
    },
    {
      "package": "raster",
      "role": "Imports"
    },
    {
      "package": "graphics",
      "role": "Imports"
    },
    {
      "package": "grDevices",
      "role": "Imports"
    },
    {
      "package": "utils",
      "role": "Imports"
    },
    {
      "package": "digest",
      "role": "Imports"
    },
    {
      "package": "EGM",
      "role": "Imports"
    },
    {
      "package": "xml2",
      "role": "Imports"
    },
    {
      "package": "Matrix",
      "role": "Imports"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "latex2exp",
      "role": "Suggests"
    },
    {
      "package": "remotes",
      "role": "Suggests"
    }
  ],
  "_owner": "artur-gramacki",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2026-13",
      "n": 12
    },
    {
      "week": "2026-14",
      "n": 3
    },
    {
      "week": "2026-15",
      "n": 4
    },
    {
      "week": "2026-16",
      "n": 1
    },
    {
      "week": "2026-18",
      "n": 4
    },
    {
      "week": "2026-19",
      "n": 12
    },
    {
      "week": "2026-24",
      "n": 3
    },
    {
      "week": "2026-25",
      "n": 11
    },
    {
      "week": "2026-26",
      "n": 7
    },
    {
      "week": "2026-27",
      "n": 9
    },
    {
      "week": "2026-29",
      "n": 2
    },
    {
      "week": "2026-30",
      "n": 1
    },
    {
      "week": "2026-31",
      "n": 2
    },
    {
      "week": "2026-32",
      "n": 4
    },
    {
      "week": "2026-34",
      "n": 2
    },
    {
      "week": "2026-36",
      "n": 9
    },
    {
      "week": "2026-37",
      "n": 8
    },
    {
      "week": "2026-38",
      "n": 5
    },
    {
      "week": "2026-39",
      "n": 5
    },
    {
      "week": "2026-42",
      "n": 3
    },
    {
      "week": "2026-43",
      "n": 2
    },
    {
      "week": "2026-44",
      "n": 2
    }
  ],
  "_tags": [
    {
      "name": "1.1.0",
      "date": "2026-06-23"
    },
    {
      "name": "1.2.0",
      "date": "2026-08-18"
    },
    {
      "name": "1.3.0",
      "date": "2026-09-06"
    }
  ],
  "_stars": 0,
  "_contributors": [
    {
      "user": "artur-gramacki",
      "count": 111,
      "uuid": 89815117
    }
  ],
  "_userbio": {
    "uuid": 89815117,
    "type": "user",
    "name": "Artur Gramacki",
    "followers": 0
  },
  "_downloads": {
    "count": 387,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/MatchingPursuit"
  },
  "_devurl": "https://github.com/artur-gramacki/matchingpursuit",
  "_searchresults": 0,
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/manual.pdf",
    "extra/MatchingPursuit.html",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md"
  ],
  "_homeurl": "https://github.com/artur-gramacki/matchingpursuit",
  "_realowner": "artur-gramacki",
  "_cranurl": true,
  "_releases": [
    {
      "version": "1.0.0",
      "date": "2026-04-09"
    },
    {
      "version": "1.0.1",
      "date": "2026-04-14"
    },
    {
      "version": "1.1.0",
      "date": "2026-06-24"
    },
    {
      "version": "1.2.0",
      "date": "2026-08-19"
    },
    {
      "version": "1.3.0",
      "date": "2026-09-17"
    }
  ],
  "_exports": [
    "as_sig",
    "clear_cache",
    "design_filters",
    "eeg_montage",
    "empi_check",
    "empi_execute",
    "empi_install",
    "empi_locate",
    "gabor_atom",
    "gabor_projection_fft",
    "generate_xml_dict",
    "materialize_gabor",
    "mp_core",
    "mp_core_gabor",
    "mp_omp_execute",
    "mp_omp_gabor_to_mp",
    "omp_core",
    "omp_core_gabor",
    "omp_reference",
    "read_atom_params",
    "read_csv_signals",
    "read_edf_params",
    "read_edf_signals",
    "read_empi_db",
    "read_gabor_dict",
    "read_wfdb_signals",
    "resample_signal",
    "signal_to_bin",
    "tf_map"
  ],
  "_help": [
    {
      "page": "as_sig",
      "title": "Convert a signal to a 'sig' object",
      "topics": [
        "as_sig"
      ]
    },
    {
      "page": "clear_cache",
      "title": "Clear MatchingPursuit cache",
      "topics": [
        "clear_cache"
      ]
    },
    {
      "page": "design_filters",
      "title": "Design Butterworth filters",
      "topics": [
        "design_filters"
      ]
    },
    {
      "page": "edf-methods",
      "title": "Methods for EDF objects",
      "topics": [
        "edf-methods",
        "plot.edf",
        "print.edf",
        "print.summary.edf",
        "summary.edf"
      ]
    },
    {
      "page": "eeg_montage",
      "title": "Performs bipolar, reference or average EEG montage",
      "topics": [
        "eeg_montage"
      ]
    },
    {
      "page": "empi_check",
      "title": "Check whether EMPI is installed",
      "topics": [
        "empi_check"
      ]
    },
    {
      "page": "empi_execute",
      "title": "Launches the empi program",
      "topics": [
        "empi_execute"
      ]
    },
    {
      "page": "empi_install",
      "title": "Installs the EMPI external program",
      "topics": [
        "empi_install"
      ]
    },
    {
      "page": "empi_locate",
      "title": "Get required external software localization",
      "topics": [
        "empi_locate"
      ]
    },
    {
      "page": "gabor_atom",
      "title": "Generate a Gabor atom",
      "topics": [
        "gabor_atom"
      ]
    },
    {
      "page": "gabor_projection_fft",
      "title": "FFT-based computation of projections onto Gabor atoms",
      "topics": [
        "gabor_projection_fft"
      ]
    },
    {
      "page": "generate_xml_dict",
      "title": "Generate an EMPI-compatible Gabor dictionary",
      "topics": [
        "generate_xml_dict"
      ]
    },
    {
      "page": "materialize_gabor",
      "title": "Materialize a Gabor dictionary with fixed or atom-specific phases",
      "topics": [
        "materialize_gabor"
      ]
    },
    {
      "page": "mp_core",
      "title": "Implements the classical Matching Pursuit algorithm",
      "topics": [
        "mp_core"
      ]
    },
    {
      "page": "mp_core_gabor",
      "title": "Matching Pursuit for a Parameterized Gabor Dictionary",
      "topics": [
        "mp_core_gabor"
      ]
    },
    {
      "page": "mp_omp_execute",
      "title": "Matching Pursuit or Orthogonal Matching Pursuit decomposition for multi-channel signals",
      "topics": [
        "mp_omp_execute"
      ]
    },
    {
      "page": "mp_omp_gabor_to_mp",
      "title": "Convert a Gabor MP/OMP core result to an mp object",
      "topics": [
        "mp_omp_gabor_to_mp"
      ]
    },
    {
      "page": "mp-methods",
      "title": "Methods for Matching Pursuit objects",
      "topics": [
        "mp-methods",
        "plot.mp",
        "print.mp",
        "print.summary.mp",
        "summary.mp"
      ]
    },
    {
      "page": "omp_core",
      "title": "Implements Orthogonal Matching Pursuit algorithm",
      "topics": [
        "omp_core"
      ]
    },
    {
      "page": "omp_core_gabor",
      "title": "Orthogonal Matching Pursuit for a parameterized Gabor dictionary",
      "topics": [
        "omp_core_gabor"
      ]
    },
    {
      "page": "omp_reference",
      "title": "Reference implementation of Orthogonal Matching Pursuit",
      "topics": [
        "omp_reference"
      ]
    },
    {
      "page": "read_atom_params",
      "title": "Read atom parameters from a SQLite database",
      "topics": [
        "read_atom_params"
      ]
    },
    {
      "page": "read_csv_signals",
      "title": "Reads and validates a CSV file structure",
      "topics": [
        "read_csv_signals"
      ]
    },
    {
      "page": "read_edf_params",
      "title": "Reads a selected EDF or EDF+ file and returns signal parameters",
      "topics": [
        "read_edf_params"
      ]
    },
    {
      "page": "read_edf_signals",
      "title": "Reads a selected EDF or EDF+ file and returns signal data",
      "topics": [
        "read_edf_signals"
      ]
    },
    {
      "page": "read_empi_db",
      "title": "Read EMPI decomposition results from a SQLite database",
      "topics": [
        "read_empi_db"
      ]
    },
    {
      "page": "read_gabor_dict",
      "title": "Read a Gabor dictionary from an XML file",
      "topics": [
        "read_gabor_dict"
      ]
    },
    {
      "page": "read_wfdb_signals",
      "title": "Reads WFDB-compatible signal and header files",
      "topics": [
        "read_wfdb_signals"
      ]
    },
    {
      "page": "resample_signal",
      "title": "Resample a signal (upsampling or downsampling)",
      "topics": [
        "resample_signal"
      ]
    },
    {
      "page": "sig-methods",
      "title": "Methods for signal objects",
      "topics": [
        "plot.sig",
        "print.sig",
        "print.summary.sig",
        "sig-methods",
        "summary.sig"
      ]
    },
    {
      "page": "signal_to_bin",
      "title": "Convert multichannel signals to binary format",
      "topics": [
        "signal_to_bin"
      ]
    },
    {
      "page": "tf_map",
      "title": "Creates a time-frequency map using atoms from the Matching Pursuit algorithm",
      "topics": [
        "tf_map"
      ]
    },
    {
      "page": "wfdb-methods",
      "title": "Methods for WFDB objects",
      "topics": [
        "plot.wfdb",
        "print.summary.wfdb",
        "print.wfdb",
        "summary.wfdb",
        "wfdb-methods"
      ]
    }
  ],
  "_readme": "https://github.com/artur-gramacki/matchingpursuit/raw/HEAD/README.md",
  "_rundeps": [
    "backports",
    "base64enc",
    "bit",
    "bit64",
    "blob",
    "bmp",
    "cachem",
    "checkmate",
    "cli",
    "cpp11",
    "data.table",
    "DBI",
    "digest",
    "downloader",
    "edf",
    "EGM",
    "farver",
    "fastmap",
    "fs",
    "ggplot2",
    "glue",
    "gtable",
    "igraph",
    "imager",
    "isoband",
    "jpeg",
    "labeling",
    "lattice",
    "lifecycle",
    "magrittr",
    "MASS",
    "Matrix",
    "memoise",
    "pkgconfig",
    "png",
    "purrr",
    "R6",
    "raster",
    "RColorBrewer",
    "Rcpp",
    "readbitmap",
    "rlang",
    "RSQLite",
    "S7",
    "scales",
    "signal",
    "sp",
    "stringi",
    "stringr",
    "terra",
    "tiff",
    "vctrs",
    "viridisLite",
    "withr",
    "xml2"
  ],
  "_vignettes": [
    {
      "source": "MatchingPursuit.Rmd",
      "filename": "MatchingPursuit.html",
      "title": "Introduction to MatchingPursuit package",
      "author": "authors: Artur Gramacki and Jarosław Gramacki",
      "engine": "knitr::rmarkdown",
      "headings": [
        "R version and generation time",
        "Loading the package",
        "The purpose and functionality of the package",
        "Naming convention",
        "Installing the optional EMPI backend",
        "Quick start",
        "Step 1 - Input signal preparation",
        "Step 2 - Native R MP decomposition",
        "Step 3 - Time-frequency map",
        "Step 4 - Optional EMPI-based decomposition",
        "Electroencephalogram (EEG) analysis",
        "Step 1 - Reading EEG data",
        "Step 2 - Filtering",
        "Step 3 - Resampling",
        "Step 4 - Montage construction",
        "Step 5 - MP decomposition",
        "Step 6 - Time-frequency map",
        "Step 7 - Displaying EEG signals using plot() (optional)",
        "Electrocardiography (ECG) analysis",
        "Step 1 - Reading ECG data",
        "Step 2 - MP decomposition",
        "Step 4 - ECG printout (optional)",
        "Sparse decomposition of a synthetic multicomponent signal",
        "The Matching Pursuit algorithm in a nutshell",
        "The Orthogonal Matching Pursuit algorithm in a nutshell",
        "$$\\mathbf",
        "Comparison of MP and OMP",
        "Pure R implementation of the MP and OMP algorithms",
        "Core MP and OMP functions",
        "High-level decomposition interface",
        "Gabor dictionary preparation",
        "Reading the Gabor dictionary",
        "Iterative Gabor atom selection",
        "Validation using a synthetic sparse signal",
        "Relationship between MP-R, OMP-R, and EMPI backends",
        "XML-based atom dictionary specification",
        "Number of window positions",
        "Number of frequency bins",
        "The total number of atoms",
        "Multiple-block dictionaries",
        "XML-based atom dictionary generator",
        "Bibliography"
      ],
      "created": "2026-03-27 00:30:02",
      "modified": "2026-10-31 23:40:14",
      "commits": 48
    }
  ],
  "_score": 5.041392685158225,
  "_indexed": true,
  "_nocasepkg": "matchingpursuit",
  "_universes": [
    "artur-gramacki"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.4.0",
      "date": "2026-11-01T03:26:26.000Z",
      "distro": "resolute",
      "commit": "618efbf2ef9ff92efcce3736b5990d904597d30c",
      "fileid": "https://r2.ropensci.org/56318f2aca0dbac9d7a8350c8e19f4847562c3647aa861a7136667e60ee8190d",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/artur-gramacki/actions/runs/41268744673"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "1.4.0",
      "date": "2026-11-01T03:26:11.000Z",
      "distro": "resolute",
      "commit": "618efbf2ef9ff92efcce3736b5990d904597d30c",
      "fileid": "https://r2.ropensci.org/7e3e2ead864a02089f6bb5bd52d6ee0a267a0840b1224c87d9f8cca736964345",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/artur-gramacki/actions/runs/41268744673"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "1.4.0",
      "date": "2026-11-01T03:26:53.000Z",
      "commit": "618efbf2ef9ff92efcce3736b5990d904597d30c",
      "fileid": "https://r2.ropensci.org/7e24e98d32bce756b9c2f6fd8b42323c8308fa66724d21dd21fb79126314c426",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/artur-gramacki/actions/runs/41268744673"
    },
    {
      "r": "4.6.2",
      "os": "mac",
      "version": "1.4.0",
      "date": "2026-11-01T03:26:03.000Z",
      "commit": "618efbf2ef9ff92efcce3736b5990d904597d30c",
      "fileid": "https://r2.ropensci.org/83412c9eec7f0ce2f6dba99199e2c3580b293a294562b83d48d8ef65e005d9f3",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/artur-gramacki/actions/runs/41268744673"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "1.4.0",
      "date": "2026-11-01T03:26:25.000Z",
      "commit": "618efbf2ef9ff92efcce3736b5990d904597d30c",
      "fileid": "https://r2.ropensci.org/74666b02ad5e840a9bd518276db2ddc0089c28055eee000ad983c420e3e0b8c1",
      "status": "success",
      "buildurl": "https://github.com/r-universe/artur-gramacki/actions/runs/41268744673"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "1.4.0",
      "date": "2026-11-01T03:25:28.000Z",
      "commit": "618efbf2ef9ff92efcce3736b5990d904597d30c",
      "fileid": "https://r2.ropensci.org/dda7e270e3f5d9956345659ef29115fdbdc0a849394d841532b959e523b35bf5",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/artur-gramacki/actions/runs/41268744673"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "1.4.0",
      "date": "2026-11-01T03:25:20.000Z",
      "commit": "618efbf2ef9ff92efcce3736b5990d904597d30c",
      "fileid": "https://r2.ropensci.org/c5b67e40e02c3c62438775abc493a7aa3901c198f239be39934482ddfb682b76",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/artur-gramacki/actions/runs/41268744673"
    },
    {
      "r": "4.6.2",
      "os": "win",
      "version": "1.4.0",
      "date": "2026-11-01T03:25:11.000Z",
      "commit": "618efbf2ef9ff92efcce3736b5990d904597d30c",
      "fileid": "https://r2.ropensci.org/4a65595ae24063be271609b03dc129e28fbbda451cfd9cb2a575f66804ff7306",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/artur-gramacki/actions/runs/41268744673"
    }
  ]
}