This collection contains modeled bird-density rasters for 125 species included in Maine Bird Atlas 2. The rasters were produced using Bayesian hierarchical density models that account for biases associated with species detectability and availability during the observation process. The models incorporate spatial structure and environmental covariates to estimate the relative density and geographic distribution of each species across Maine.
Each modeled species is represented by a density raster and an accompanying coefficient-of-variation raster that summarizes uncertainty in the predicted density values based on the full posterior distribution of the model. The rasters have a spatial resolution of approximately 1 kilometer by 1 kilometer and use the NAD83 UTM Zone 19N coordinate reference system. Raster cells are similar in scale to, but do not correspond exactly with, Maine Bird Atlas survey blocks. Additional information about the modeling methods is available in the Data Analysis chapter of Maine Bird Atlas 2.
Related Population Estimates
Statewide species population-size estimates derived from the density modeling are available as CSV and RDS files in the Maine Bird Atlas Databases collection . The CSV provides the estimates in a broadly accessible tabular format, while the RDS file preserves the data as an R object for additional analysis and reproducible use.
Instructions for Batch Download of All Density Raster Files
Windows users can use the following instructions to batch download all the GeoTIFF files to their computer.
- Open Windows PowerShell.
- Copy the entire script from the shaded box below.
- Paste it into the PowerShell window and press Enter.
The script creates a folder named
Maine_Bird_Atlas_Density_Rasters
in the current location and downloads the original GeoTIFF associated
with every record in this collection.
Because the complete collection is large, make sure sufficient storage space is available before beginning.
PowerShell script:
$collection = "maine_bird_atlas_density_rasters"
$outputFolder = Join-Path $PWD "Maine_Bird_Atlas_Density_Rasters"
New-Item -ItemType Directory -Path $outputFolder -Force | Out-Null
$url = "https://digitalmaine.com/do/oai/?verb=ListRecords" +
"&metadataPrefix=oai_dc" +
"&set=publication:$collection"
$headers = @{
"User-Agent" = "Maine Bird Atlas bulk downloader"
}
do {
Write-Host "Reading collection records..."
[xml]$xml = (Invoke-WebRequest -Uri $url -Headers $headers).Content
$ns = New-Object System.Xml.XmlNamespaceManager($xml.NameTable)
$ns.AddNamespace("oai", "http://www.openarchives.org/OAI/2.0/")
$ns.AddNamespace("dc", "http://purl.org/dc/elements/1.1/")
$records = $xml.SelectNodes("//oai:record", $ns)
foreach ($record in $records) {
$titleNode = $record.SelectSingleNode(
".//dc:title",
$ns
)
$downloadNode = $record.SelectNodes(
".//dc:identifier",
$ns
) | Where-Object {
$_.InnerText -match "/type/native/viewcontent"
} | Select-Object -First 1
if ($titleNode -and $downloadNode) {
$safeTitle = $titleNode.InnerText `
-replace '[<>:"/\\|?*]', '_' `
-replace '\s+$', ''
$destination = Join-Path $outputFolder "$safeTitle.tif"
if (-not (Test-Path $destination)) {
Write-Host "Downloading: $($titleNode.InnerText)"
Invoke-WebRequest `
-Uri $downloadNode.InnerText `
-Headers $headers `
-OutFile $destination
}
else {
Write-Host "Already downloaded: $safeTitle.tif"
}
}
}
$tokenNode = $xml.SelectSingleNode(
"//oai:resumptionToken",
$ns
)
$token = if ($tokenNode) {
$tokenNode.InnerText.Trim()
}
else {
""
}
if ($token) {
$encodedToken = [uri]::EscapeDataString($token)
$url = "https://digitalmaine.com/do/oai/" +
"?verb=ListRecords&resumptionToken=$encodedToken"
}
} while ($token)
Write-Host ""
Write-Host "Download complete."
Write-Host "Files are located in: $outputFolder"
Tip: Click inside the shaded box, press Ctrl+A to select the script, and then press Ctrl+C to copy it.