R Observatory
Search
install.packages("camtrapR")
CRAN 30-day downloads, method
1,441+10.5% up on the 30 days before, the better direction
Test coverage, method
46%of lines run by tests

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

Compare with another package

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, Subjects
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.

APA
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.

All 13 check platforms pass.

  • r-devel-linux-x86_64-debian-clang

    The unreleased R on Linux, x86_64, debian-clang

    OK

    Version checked
    3.1.0
    Time taken
    795 s
  • r-devel-linux-x86_64-debian-gcc

    The unreleased R on Linux, x86_64, debian-gcc

    OK

    Version checked
    3.1.0
    Time taken
    540 s
  • r-devel-linux-x86_64-fedora-clang

    The unreleased R on Linux, x86_64, fedora-clang

    OK

    Version checked
    3.1.0
    Time taken
    535 s
  • r-devel-linux-x86_64-fedora-gcc

    The unreleased R on Linux, x86_64, fedora-gcc

    OK

    Version checked
    3.1.0
    Time taken
    546 s
  • r-devel-windows-x86_64

    The unreleased R on Windows, x86_64

    OK

    Version checked
    3.1.0
    Time taken
    523 s
  • r-oldrel-macos-arm64

    The previous release of R on macOS, arm64

    OK

    Version checked
    3.1.0
    Time taken
    123 s
  • r-oldrel-macos-x86_64

    The previous release of R on macOS, x86_64

    OK

    Version checked
    3.1.0
    Time taken
    897 s
  • r-oldrel-windows-x86_64

    The previous release of R on Windows, x86_64

    OK

    Version checked
    3.1.0
    Time taken
    714 s
  • r-patched-linux-x86_64

    The patched release of R on Linux, x86_64

    OK

    Version checked
    3.1.0
    Time taken
    759 s
  • r-release-linux-x86_64

    The current release of R on Linux, x86_64

    OK

    Version checked
    3.1.0
    Time taken
    764 s
  • r-release-macos-arm64

    The current release of R on macOS, arm64

    OK

    Version checked
    3.1.0
    Time taken
    121 s
  • r-release-macos-x86_64

    The current release of R on macOS, x86_64

    OK

    Version checked
    3.1.0
    Time taken
    794 s
  • r-release-windows-x86_64

    The 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)
ChangedWorst statusOKNotesWarningsErrors
28 Oct 2026OK13000
27 Oct 2026Error12001
20 Aug 2026OK13000
18 Aug 2026Error12001
5 Aug 2026OK13000
1 Aug 2026Note12100
25 Apr 2026OK12000
23 Apr 2026Note11300
14 Apr 2026Error10301
10 Mar 2026Note11300

Since March 2026

Check results on CRAN

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

Over time

Compare downloads

Functions
123
Public exports
36
Lines of R code
34,223
Median complexity
8
Functions (123)
Size and composition

Lines by kind (47,620)

KindLinesShare
R code34,22372%
Tests6,82614%
Documentation6,53514%
Guides360.1%

Lines by language

LanguageLinesShare
R39,56283%
Rd6,53514%
Other1,0152%
JSON5081%

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)
Total lines by release
4,710 on 29 Jul 201547,620 on 28 Jul 2026
Release changes

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
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
DatasetSizeColumns
camtrapsSample camera trap station information3 × 7Station, utm_y, utm_x, Setup_date, Retrieval_date, Problem1_from and 1 more
camtrapsMultiSeasonSample multi-season camera trap station information7 × 8Station, utm_y, utm_x, Setup_date, Retrieval_date, Problem1_from and 2 more
recordTableIndividualSampleSample single-species record table with custom metadata from camera trap images21 × 17Station, Species, Individual, DateTimeOriginal, Date, Time and 11 more
recordTableIndividualSampleMultiSeasonSample single-species multi-season record table with custom metadata from camera trap images31 × 17Station, Species, Individual, DateTimeOriginal, Date, Time and 11 more
recordTableSampleSample species record table from camera trap images39 × 12Station, Species, DateTimeOriginal, Date, Time, delta.time.secs and 6 more
recordTableSampleMultiSeasonSample multi-season species record table from camera trap images78 × 12Station, Species, DateTimeOriginal, Date, Time, delta.time.secs and 6 more
timeShiftTableSample camera trap time shift table2 × 4Station, camera, timeshift, sign
Earlier names (1)
  • Alexandre Courtiol Rahel Sollmann Andreas Wilting John Mathai Seth Timothy Wong An The Truong Nguyen Azlan bin Mohamed Andrew Tilker

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)
KindFound
Continuous integrationGitHub 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 communityContributing guide, Funding
Funding links: gofundme.com, paypal.com
Docs sourceREADME.Rmd, pkgdown
GitHub Pages site last deployed 2026-10-03
CoverageCoverage reporting, .covrignore
Reproducibility and dev environmentdata-raw/
Lint, format, editorVS Code, RStudio project
Git structural.gitattributes

Method, repository practices

Across jniedballa

R releases
  • On CRAN
  • Archived
  • Release

Archived and back

ArchivedBackCRAN's reasonKind
9 May 202211 May 2022check problems were not corrected in timeChecks not fixed
VersionReleasedREvents
3.1.0 current28 Jul 20264.6.1
3.0.430 Apr 20264.6.0
3.0.39 Feb 20264.5.2
3.0.225 Jan 20264.5.2
3.0.028 Sep 20254.5.1
2.3.12 Sep 20254.5.1
2.3.026 Feb 20244.3.2
2.2.011 May 20224.2.0Back on CRAN 11 May 2022
Earlier versions (23)
VersionReleasedREvents
2.0.329 Jul 20204.0.2Archived 9 May 2022
“check problems were not corrected in time”
2.0.223 Apr 20203.6.3
2.0.120 Apr 20203.6.3
2.0.017 Apr 20203.6.3
1.2.310 Jan 20203.6.2
1.2.27 Jan 20203.6.2
1.2.117 Dec 20193.6.2
1.25 Dec 20193.6.1
1.113 Mar 20193.5.3
1.027 Oct 20183.5.1
0.99.925 Oct 20173.4.2
0.99.821 Mar 20173.3.3
0.99.731 Jan 20173.3.2
0.99.620 Dec 20163.3.2
0.99.56 Oct 20163.3.1
0.99.412 Aug 20163.3.1
0.99.31 Aug 20163.3.1
0.99.224 Jun 20163.3.1
0.99.118 May 20163.3.0
0.99.012 Apr 20163.2.4
0.98.016 Nov 20153.2.2
0.97.15 Aug 20153.2.1
0.97.029 Jul 20153.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()