camtrapR
‹3.1.0
- 3.1.028 Jul 2026, current
- 3.0.430 Apr 2026
- 3.0.39 Feb 2026
- 3.0.225 Jan 2026
- 3.0.028 Sep 2025
- 2.3.12 Sep 2025
- 2.3.026 Feb 2024
- 2.2.011 May 2022
- 2.0.329 Jul 2020
- 2.0.223 Apr 2020
- 2.0.120 Apr 2020
- 2.0.017 Apr 2020
- 1.2.310 Jan 2020
- 1.2.27 Jan 2020
- 1.2.117 Dec 2019
- 1.25 Dec 2019
- 1.113 Mar 2019
- 1.027 Oct 2018
- 0.99.925 Oct 2017
- 0.99.821 Mar 2017
- 0.99.731 Jan 2017
- 0.99.620 Dec 2016
- 0.99.56 Oct 2016
- 0.99.412 Aug 2016
- 0.99.31 Aug 2016
- 0.99.224 Jun 2016
- 0.99.118 May 2016
- 0.99.012 Apr 2016
- 0.98.016 Nov 2015
- 0.97.15 Aug 2015
- 0.97.029 Jul 2015
Camera Trap Data Management and Analysis Framework
- CRAN checks, method
Method
Checks and health
CRAN runs every current package through
R CMD checkon a set of machines and publishes a result for each one. The health shown on a package page comes from these results alone.- Problems
- Notes alone never count against a package, but a warning, an error or a failure on any platform is a problem. Open CRAN deadlines are a fact of their own, shown as a clock after the mark, so the mark always says what the checks found.
- Checks only
- Health reflects CRAN's check results and nothing else. Even a package with no tests, no coverage or no recent release can have every platform OK.
- Once a day
- Results are collected once a day from files CRAN publishes. Each platform is one machine set-up, named by its R version, operating system, architecture and compiler, such as r-devel-linux-x86_64-fedora-clang.
- Platforms counted
- The 13 in 3 of 13 is the number of platform rows CRAN published for that package on the day of collection. The set of machines changes over time, so the number is not fixed, and a package missing from a platform counts as neither passing nor failing there.
- All OK13 platforms
- CRAN 30-day downloads, method
- 1,441+10.5% up on the 30 days before, the better direction
- Dependent packages, method
Method
Reverse dependencies
Dependent packages are other packages that list this one under
Depends,ImportsorLinkingToin theirDESCRIPTIONfile. Those fields list the packages a package needs to install, so dependents break if this one is archived or broken.- As declared
- The counts follow the declarations as written, not whether a package uses the other one when it runs.
- Suggests apart
- Packages that list this one only under
Suggestsinstall and run without it, and use it for tests, examples or an optional feature. They are counted as Suggested by, never among the dependents, and a package that also lists it under one of the three fields is a dependent and is not counted again. - Zero
- Zero dependents means no current CRAN package declares a need for this one, though some may suggest it. On 29 Oct 2026, 19,585 of the 25,593 current CRAN packages had no dependent package.
- 01 more suggest it
- Test coverage, method
Method
Test coverage
Test coverage is measured by downloading each CRAN package's current source file, installing its dependencies, building it and running its tests under covr.
- Almost half of CRAN has no tests to run
- Only CRAN packages are measured. Many have no percentage, most often because the package has no tests, and that blank is a recorded outcome, not missing data.
- NOT_CRAN
- Tests run with NOT_CRAN=true, so tests that skip themselves on CRAN run here, and the figure can differ from what CRAN's own checks see.
- Current version only
- Only the current version is measured, and a new version on CRAN is measured again. Older rows are kept but never filled in later. This is one package's run.
- Never 0%
- On a package page three states stay apart: measured, no tests, and not measured. Neither of the last two is ever shown as 0%.
- 46%of lines run by tests
- Advisories, method
Method
Security advisories
Advisories come from the R Consortium advisory database, a community record of security problems in R packages, as OSV publishes it.
- The copy
- The record is read once a day. The data is published under the Apache License 2.0 and is credited on the advisories list.
- Box under the name
- Under the package's name, a box names any advisory that affects the current release, with its fix or that there is none.
- Ranges
- Advisories state ranges, such as from 0.9.12 up to but not including 1.8.8. Each range is checked against every version CRAN has published, using the version rules R itself uses, so a release that came out after the advisory was written is still caught by its range.
- Not the package
- The rating is for the library flaw itself, not for how exposed the R package is, and it is never added up into a figure for the package.
- None known
About
Method, About Method Licence figures come from the Licences
License field of each package's DESCRIPTION file, read the way R itself reads it. No licence file is opened.tools::analyze_license() and R's own licence database, as CRAN's checks read it.| is read, so one string can offer two families.
Management and analysis of camera trap wildlife data through an integrated workflow. Provides functions for image/video organization and metadata extraction, species/individual identification.
Full description
Management and analysis of camera trap wildlife data through an integrated workflow. Provides functions for image/video organization and metadata extraction, species/individual identification. Creates detection histories for occupancy and spatial capture-recapture analyses, with support for multi-season studies. Includes tools for fitting community occupancy models in JAGS and NIMBLE, and an interactive dashboard for survey data visualization and analysis. Features visualization of species distributions and activity patterns, plus export capabilities for GIS and reports. Emphasizes automation and reproducibility while maintaining flexibility for different study designs.
- Maintainer
- Juergen Niedballa
- Licence
- GPL (>= 2)
- Latest release
- 28 Jul 2026
- First release
- 29 Jul 2015
More details
- Releases
- 31
- Needs compilation
- No
- Needs R
- >= 4.1.0
- Config/roxygen2/version
- 8.0.0
- Date
- 2026-07-25
- SystemRequirements
- ExifTool (https://exiftool.org/)
Subjects (1) Method, SubjectsMethod
Subjects and collections
Subjects are the site's own grouping of CRAN packages, found by clustering. Collections are sets of packages that communities declare, such as the tidyverse.
- Subjects
- Subjects are found by clustering the words of current CRAN packages and the packages they use. No one edits them by hand.
- Collections
- Collections are sets that communities declare, through a package that installs the set or an organization on GitHub. The site finds them by rules.
- Who made each
- Subjects are marked Site and collections Community. Subjects, collections and task views are never mixed in one list.
- The day of the data
- Subjects and collections were last worked out on 22 Oct 2026.
Cite
Package
Run in R for the authors' entry:
citation("camtrapR")The package provides a citation file, so citation() returns the authors' own entry.
It points to 10.1111/2041-210x.12600.
R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
Balamuta, J. J. (2026). R Observatory: Metrics for camtrapR version 3.1.0 [Data set]. HJJB, LLC. Data release v2026-10-29. https://doi.org/10.5281/zenodo.21843040
About
From data release v2026-10-29, which the citation names so these numbers can be found later.
Health
All 13 check platforms pass.
r-devel-linux-x86_64-debian-clangThe unreleased R on Linux, x86_64, debian-clang
OK
- Version checked
- 3.1.0
- Time taken
- 795 s
r-devel-linux-x86_64-debian-gccThe unreleased R on Linux, x86_64, debian-gcc
OK
- Version checked
- 3.1.0
- Time taken
- 540 s
r-devel-linux-x86_64-fedora-clangThe unreleased R on Linux, x86_64, fedora-clang
OK
- Version checked
- 3.1.0
- Time taken
- 535 s
r-devel-linux-x86_64-fedora-gccThe unreleased R on Linux, x86_64, fedora-gcc
OK
- Version checked
- 3.1.0
- Time taken
- 546 s
r-devel-windows-x86_64The unreleased R on Windows, x86_64
OK
- Version checked
- 3.1.0
- Time taken
- 523 s
r-oldrel-macos-arm64The previous release of R on macOS, arm64
OK
- Version checked
- 3.1.0
- Time taken
- 123 s
r-oldrel-macos-x86_64The previous release of R on macOS, x86_64
OK
- Version checked
- 3.1.0
- Time taken
- 897 s
r-oldrel-windows-x86_64The previous release of R on Windows, x86_64
OK
- Version checked
- 3.1.0
- Time taken
- 714 s
r-patched-linux-x86_64The patched release of R on Linux, x86_64
OK
- Version checked
- 3.1.0
- Time taken
- 759 s
r-release-linux-x86_64The current release of R on Linux, x86_64
OK
- Version checked
- 3.1.0
- Time taken
- 764 s
r-release-macos-arm64The current release of R on macOS, arm64
OK
- Version checked
- 3.1.0
- Time taken
- 121 s
r-release-macos-x86_64The current release of R on macOS, x86_64
OK
- Version checked
- 3.1.0
- Time taken
- 794 s
r-release-windows-x86_64The current release of R on Windows, x86_64
OK
- Version checked
- 3.1.0
- Time taken
- 497 s
- 13 OK
Over time
No change since 28 Oct 2026
As a list (10)
| Changed | Worst status | OK | Notes | Warnings | Errors |
|---|---|---|---|---|---|
| 28 Oct 2026 | OK | 13 | 0 | 0 | 0 |
| 27 Oct 2026 | Error | 12 | 0 | 0 | 1 |
| 20 Aug 2026 | OK | 13 | 0 | 0 | 0 |
| 18 Aug 2026 | Error | 12 | 0 | 0 | 1 |
| 5 Aug 2026 | OK | 13 | 0 | 0 | 0 |
| 1 Aug 2026 | Note | 12 | 1 | 0 | 0 |
| 25 Apr 2026 | OK | 12 | 0 | 0 | 0 |
| 23 Apr 2026 | Note | 11 | 3 | 0 | 0 |
| 14 Apr 2026 | Error | 10 | 3 | 0 | 1 |
| 10 Mar 2026 | Note | 11 | 3 | 0 | 0 |
Since March 2026
Downloads
Method, Downloads Method Download figures count requests logged by each distribution channel. They are not counts of installs or of users, because each channel publishes its own totals and this site reads them.Downloads
- Total downloads in the last 30 days
- 1,489+10.7% up on the 30 days before, the better directionIt is the sum of 3 channels: CRAN, r2u and autoCRAN.
CRAN rank
3,117 of 26,553
CRAN
1,441 downloads in the last 30 days
- Rank
- 3,117 of 26,553
- Change
- +10.5% up on the 30 days before, the better direction
It is in the total. Take it out
r2u
33 downloads in the last 30 days
- Rank
- 3,803 of 30,526
- Change
- +73.7% up on the 30 days before, the better direction
It is in the total. Take it out
autoCRAN
15 downloads in the last 30 days
- Rank
- 3,247 of 29,233
- Change
- −31.8% down on the 30 days before, the worse direction
It is in the total. Take it out
The total is 1,489 downloads in the last 30 days. It is the sum of 3 channels: CRAN, r2u and autoCRAN.
Over time
Dependencies
- Needs
- 20
- Dependent packages
- 0
- Suggested by
- 1
Needs (20)
Optional extras (44)
- abind
- bayesplot
- callr
- camtrapdp
- coda
- corrplot
- elevatr
- iNEXT
- jsonify
- jsonlite
- knitr
- lattice
- magick
- mapview
- mockery
- nimble
- nimbleEcology
- overlap
- parallel
- patchwork
- pbapply
- plotly
- psych
- R.rsp
- raster
- ritis
- rjags
- rlang
- rmarkdown
- RSQLite
- rstudioapi
- scales
- shinytest2
- shinyWidgets
- stringr
- taxize
- tesseract
- testthat
- ubms
- units
- unmarked
- viridisLite
- withr
- zip
Code
Method, Code Method Code metrics come from reading the released source of each package version. The package is never installed, loaded or run.Code metrics
README, vignettes, a NEWS file and the shares read from its help pages. Files kept only in the repository, such as a pkgdown configuration or CI files, are read by the repository scan instead.
- Functions
- 123
- Public exports
- 36
- Lines of R code
- 34,223
- Median complexity
- 8
Functions (123)
Size and composition
Lines by kind (47,620)
| Kind | Lines | Share |
|---|---|---|
| R code | 34,223 | 72% |
| Tests | 6,826 | 14% |
| Documentation | 6,535 | 14% |
| Guides | 36 | 0.1% |
Lines by language
| Language | Lines | Share |
|---|---|---|
| R | 39,562 | 83% |
| Rd | 6,535 | 14% |
| Other | 1,015 | 2% |
| JSON | 508 | 1% |
Languages are counted from file extensions.
- Files
- 355
- R functions
- 123
- Object systems
- S3: 12 methods, S4: 1 classes, S4: 4 generics, S4: 5 methods
Complexity
- Median
- 8
- Mean
- 24.43
- Highest
- 706
- Median lines per function
- 55
About complexity
Cyclomatic complexity counts the independent paths through a function: 1 is a straight line, higher is harder to test. R functions only.
Call graph figures
- R functions
- 123
- Calls
- 140
- Unconnected
- 34
- Groups
- 7
Growth (31 releases)
Release changes
Tests
Coverage was measured, but at least one test failed during the run.
- Lines run by tests
- 46.2%
- Expressions run by tests
- 41.2%
- Test cases
- 211
- Exports named in tests
- 72.2%
Coverage by file (41)
Coverage run
- Lines counted
- 17,403
- Lines the tests ran
- 8,043
- Tests passed
- No
- Measured with
- covr 3.6.5 on R 4.6.1
Test suite
- Has tests
- Yes
- Test frameworks
- testthat
- Test cases
- 211
- Lines of tests
- 6,826
- Test lines per line of code
- 0.2
Documentation
- Exports documented
- 100%
- Arguments documented
- 98%
- Return value documented
- 100%
- Help pages with examples
- 59.7%
- Examples run in checks
- 40.5%
Guides (6)
Other documentation
- README
- Yes, 475 words
- Release notes file
- Yes
- Help pages
- 62
- Lines of documentation
- 6,535
Datasets
Method, Datasets Method The datasets inside packages are read from their R objects in datasets
data/ folders when the code is analysed. Each object is described by its class, its shape and its columns, and fingerprinted so the same data can be found in other packages.data() are listed, 76,182 on CRAN and 8,045 on Bioconductor, so the list is not every file in data/.
| Dataset | Size | Columns |
|---|---|---|
| camtrapsSample camera trap station information | 3 × 7 | Station, utm_ |
| camtrapsMultiSeasonSample multi-season camera trap station information | 7 × 8 | Station, utm_ |
| recordTableIndividualSampleSample single-species record table with custom metadata from camera trap images | 21 × 17 | Station, Species, Individual, DateTimeOriginal, Date, Time and 11 more |
| recordTableIndividualSampleMultiSeasonSample single-species multi-season record table with custom metadata from camera trap images | 31 × 17 | Station, Species, Individual, DateTimeOriginal, Date, Time and 11 more |
| recordTableSampleSample species record table from camera trap images | 39 × 12 | Station, Species, DateTimeOriginal, Date, Time, delta. |
| recordTableSampleMultiSeasonSample multi-season species record table from camera trap images | 78 × 12 | Station, Species, DateTimeOriginal, Date, Time, delta. |
| timeShiftTableSample camera trap time shift table | 2 × 4 | Station, camera, timeshift, sign |
People
Method, People Method People on the site are the names packages give them in their Author and maintainer identity
DESCRIPTION files: authors from the author list, and the maintainer from the Maintainer field. Spellings of one name become one person only where the rules below allow it, and when in doubt the rules keep people apart.
Maintainer since 0.97.0 (2015), author
Contributor
Author
Contributor
Contributor
Contributor
Contributor
Author
Contributor
Contributor, thesis advisor
Contributor
Earlier names (1)
- Alexandre Courtiol Rahel Sollmann Andreas Wilting John Mathai Seth Timothy Wong An The Truong Nguyen Azlan bin Mohamed Andrew Tilker
Repository
Method, figures by host Method Repository signals are the figures read from the source repository a package links to: stars, forks, issues, commits, releases and the time issues take to close. They are read from GitHub, GitLab, Codeberg and Bitbucket.Repository signals
URL and BugReports fields of its DESCRIPTION file. Read-only mirrors, the cran and bioc accounts on GitHub and git.bioconductor.org, are left out.
jniedballa / camtrapr on github.com
- Stars
- 45no change on 30 days ago
- Forks
- 8
- Open issues
- 22
- Last commit
- 3 Oct 2026
Activity
- Commits
- 886
- Open pull requests
- 0
- Tagged releases
- 3
- Latest tagged release
- camtrapR_v3.1.0, 28 Jul 2026
- Issues closed in
- 50 days (median)
- Pull requests closed in
- 2 days (median)
- Pull requests merged
- 67%
- Created
- 7 Sep 2018
- Licence file reads as
- –
Development practices (14)
| Kind | Found |
|---|---|
| Continuous integration | GitHub Actions, R CMD check workflow, Travis CI (config file) The R CMD check workflow runs on Linux, macOS and Windows, and on R-devel |
| Governance and community | Contributing guide, Funding Funding links: gofundme.com, paypal.com |
| Docs source | README.Rmd, pkgdown GitHub Pages site last deployed 2026-10-03 |
| Coverage | Coverage reporting, .covrignore |
| Reproducibility and dev environment | data-raw/ |
| Lint, format, editor | VS Code, RStudio project |
| Git structural | .gitattributes |
Method, repository practices Method Beta Each week a scan of the public source repository a package links to looks for the tools a maintainer has set up, and the Repository section lists the findings. Repositories on GitHub and GitLab are scanned.Repository practices
R CMD build reads .Rbuildignore and leaves out files used only in development, such as .github/, .lintr, renv/, a Dockerfile and cran-comments.md, so the released source file holds almost none of them. The repository is the one place these files stay visible.
History
Method, History Method Archived is built from CRAN's archive records, its list of check deadlines and Bioconductor's package records. Every figure is counted to 29 Oct 2026, the day the data was read.Packages leaving
Archived and back
| Archived | Back | CRAN's reason | Kind |
|---|---|---|---|
| 9 May 2022 | 11 May 2022 | check problems were not corrected in time | Checks not fixed |
| Version | Released | R | Events |
|---|---|---|---|
| 3.1.0 current | 28 Jul 2026 | 4.6.1 | |
| 3.0.4 | 30 Apr 2026 | 4.6.0 | |
| 3.0.3 | 9 Feb 2026 | 4.5.2 | |
| 3.0.2 | 25 Jan 2026 | 4.5.2 | |
| 3.0.0 | 28 Sep 2025 | 4.5.1 | |
| 2.3.1 | 2 Sep 2025 | 4.5.1 | |
| 2.3.0 | 26 Feb 2024 | 4.3.2 | |
| 2.2.0 | 11 May 2022 | 4.2.0 | Back on CRAN 11 May 2022 |
Earlier versions (23)
| Version | Released | R | Events |
|---|---|---|---|
| 2.0.3 | 29 Jul 2020 | 4.0.2 | Archived 9 May 2022 “check problems were not corrected in time” |
| 2.0.2 | 23 Apr 2020 | 3.6.3 | |
| 2.0.1 | 20 Apr 2020 | 3.6.3 | |
| 2.0.0 | 17 Apr 2020 | 3.6.3 | |
| 1.2.3 | 10 Jan 2020 | 3.6.2 | |
| 1.2.2 | 7 Jan 2020 | 3.6.2 | |
| 1.2.1 | 17 Dec 2019 | 3.6.2 | |
| 1.2 | 5 Dec 2019 | 3.6.1 | |
| 1.1 | 13 Mar 2019 | 3.5.3 | |
| 1.0 | 27 Oct 2018 | 3.5.1 | |
| 0.99.9 | 25 Oct 2017 | 3.4.2 | |
| 0.99.8 | 21 Mar 2017 | 3.3.3 | |
| 0.99.7 | 31 Jan 2017 | 3.3.2 | |
| 0.99.6 | 20 Dec 2016 | 3.3.2 | |
| 0.99.5 | 6 Oct 2016 | 3.3.1 | |
| 0.99.4 | 12 Aug 2016 | 3.3.1 | |
| 0.99.3 | 1 Aug 2016 | 3.3.1 | |
| 0.99.2 | 24 Jun 2016 | 3.3.1 | |
| 0.99.1 | 18 May 2016 | 3.3.0 | |
| 0.99.0 | 12 Apr 2016 | 3.2.4 | |
| 0.98.0 | 16 Nov 2015 | 3.2.2 | |
| 0.97.1 | 5 Aug 2015 | 3.2.1 | |
| 0.97.0 | 29 Jul 2015 | 3.2.1 |
Release notes (3.1.0)
New function
- simulateCamtrapData(): simulate camera trap data with custom properties (e.g. for testing, examples and teaching)
New features
surveyDashboard
- new welcome screen (modal dialog) on startup
- new data-quality and convergence warning system, flagging potential problems with input data and model fit (modal dialog and sidebar)
- new date range filter for records
- new instructions for CSV uploads, with links to relevant functions
- stricter validation of CSV uploads: a CRS must now be provided (numeric EPSG codes accepted); uploads abort with an informative modal dialog if the loaded table has only one column (wrong delimiter) or if the camera trap table contains duplicate station/camera combinations
- maximum csv file upload size increased to 500 MB (was 10Mb)
- single-species occupancy: new warning UI, improved printing of model summaries and species names, fitted models can now be exported, unmarkedFrame summary shown in a separate tab
- community occupancy: model file name is now printed in the UI
- added GitHub and Google Group links to the header;
- record preview in the filter section is collapsed by default; various label, tooltip and progress-indicator improvements
Occupancy models
- community occupancy models (commOccu) can now be fitted from JAGS model code stored in the new modelText slot, without an external model file
- createCovariates() now accept plain data frames with coordinates (new arguments xcol, ycol, crs; converted to sf internally)
- consistent terminology: "community models" instead of "multi-species models"
Data import
- the Camtrap DP interface was rewritten throughout and now uses the camtrapdp package for reading data packages
- readcamtrapDP renamed to readCamtrapDP (capitalisation in line with official name)
- more tolerant Camtrap DP import: missing vernacularNames are generated from scientific names and observation type; missing placename falls back to the deployment ID (with a warning); informative error if all timestamps fail to parse
- activity estimation with Camtrap DP data now uses only observations of type "event"
Improved displays and summary functions
- recordTable, recordTableIndividual & filterRecordTable now return an object of class "records" with dedicated print, [, summary, and dplyr_reconstruct methods
- cameraOperation now returns an object of class "camOp" with dedicated print, [, summary, and plot methods
- detectionHistory now returns an object of class "detHist" with dedicated print and [ methods
- readCamtrapDP now returns an object of class "cams_dp" with a dedicated print method
- camera tables contained in readCamtrapDP and simulateCamtrapData outputs are now of class "cams" with a dedicated print method
- internal function stripClass to remove added (S3) class and attributes
Other changes
- new vignette 6 introducing the surveyDashboard (with sample data)
- surveyDashboard: documentation expanded (new section on Bayesian priors, more details on model fitting challenges)
- new package dependencies: camtrapdp, checkmate, crayon, tibble (the latter two now direct rather than indirect dependencies)
Bugfixes
- surveyDashboard:
- fixed several reactivity issues (records not resetting when loading new Camtrap DP data with active filters; number of removed images not updating; broken model selection table)
- fixed error in export of covariate rasters
- assert validity of parameter inputs (prevents opening app when e.g. column names specified wrongly)
- fixed model selection table for ubms 1.2.9
- ubms models now uses 1 core by default (faster than 3 cores for short runs)
- plot_coef(): fixed colors of plot lines by significance level in community model plots
- fixed wrong color ramp being applied to the original rasters in spatial prediction plots
- more robust aggregation of the camera trap table (all columns checked first, clearer error messages)
- fixed ggplot2 warning by replacing ylab() with labs()