Animal Recognition from Photos in Mobile Apps

Animal Recognition from Photos in Mobile Apps A user snaps a bird on a branch — it flies away while they lift the phone. We face this problem constantly: besides classification accuracy, we need to think about capture speed. We implement frame buffering and select the least blurry shot — a key di

Development and support of all types of mobile applications:

Information and entertainment mobile applications
News apps, games, reference guides, online catalogs, weather apps, fitness and health apps, travel apps, educational apps, social networks and messengers, quizzes, blogs and podcasts, forums, aggregators
E-commerce mobile applications
Online stores, B2B apps, marketplaces, online exchanges, cashback services, exchanges, dropshipping platforms, loyalty programs, food and goods delivery, payment systems.
Business process management mobile applications
CRM systems, ERP systems, project management, sales team tools, financial management, production management, logistics and delivery management, HR management, data monitoring systems
Electronic services mobile applications
Classified ads platforms, online schools, online cinemas, electronic service platforms, cashback platforms, video hosting, thematic portals, online booking and scheduling platforms, online trading platforms

These are just some of the types of mobile applications we work with, and each of them may have its own specific features and functionality, tailored to the specific needs and goals of the client.

Showing 1 of 1All 1734 services
Animal Recognition from Photos in Mobile Apps
Medium
from 4 hours to 2 days

Our competencies:

Frequently Asked Questions

Latest works

  • image_mobile-applications_feedme_467_0.webp
    Development of a mobile application for FEEDME
    896
  • image_mobile-applications_xoomer_471_0.webp
    Development of a mobile application for XOOMER
    782
  • image_mobile-applications_rhl_428_0.webp
    Development of a mobile application for RHL
    1216
  • image_mobile-applications_zippy_411_0.webp
    Development of a mobile application for ZIPPY
    1079
  • image_mobile-applications_affhome_429_0.webp
    Development of a mobile application for Affhome
    1003
  • image_mobile-applications_flavors_409_0.webp
    Development of a mobile application for the FLAVORS company
    597

Animal Recognition from Photos in Mobile Apps

A user snaps a bird on a branch — it flies away while they lift the phone. We face this problem constantly: besides classification accuracy, we need to think about capture speed. We implement frame buffering and select the least blurry shot — a key difference from static object recognition. The challenge deepens if the animal moves or lighting is poor. Our team, with over 5 years of mobile development experience and 30+ delivered AI projects, helps clients implement animal recognition with 85%+ accuracy for popular species. Users often complain that the app doesn’t recognize an animal if it’s partially hidden or in shadow. We solve this with image preprocessing: automatic brightness and contrast adjustment, and using models trained on diverse shooting conditions. Contact us — we’ll evaluate your project within one day.

How to Choose a Model?

The task heavily depends on the target animal class. Ready-made APIs cover thousands of species, but rare breeds may require a custom model.

Category Ready API / Model Number of Species
Birds Merlin Bird ID (Cornell Lab API), iNaturalist 10,000+
Wild animals iNaturalist API, INat Seek SDK 100,000+ taxa
Fish iNaturalist, FishVerify API 30,000+
Pets (breed) Google Cloud Vision, custom CoreML 200–400 breeds
Insects iNaturalist, iNat Seek 500,000+ species

For a mixed audience, iNaturalist API is the optimal choice: broad taxonomic base, confidence score at species/genus/family level, and an on-device SDK — Seek for iOS and Android. Using a ready API instead of a custom model saves from $10,000 to $30,000 in development. The iNaturalist commercial license starts at $500/month, significantly cheaper than building your own taxon database.

"iNaturalist API provides access to over 400,000 species observations" — iNaturalist Docs

Integrating iNaturalist Seek SDK on Android

class AnimalRecognitionManager(private val context: Context) { // Seek uses TFLite model ~15MB private val seekModel by lazy { SeekClassifier(context, modelPath = "seek_v2.tflite") } fun recognizeFromBitmap(bitmap: Bitmap): List<TaxonResult> { val resized = Bitmap.createScaledBitmap(bitmap, 299, 299, true) val results = seekModel.classify(resized) return results .filter { it.score > 0.15f } .sortedByDescending { it.score } .map { result -> TaxonResult( taxonId = result.taxonId, name = result.name, commonName = result.commonName, rank = result.rank, // SPECIES, GENUS, FAMILY confidence = result.score, photoUrl = result.defaultPhotoUrl ) } } } 

Rank is important for UI: if confidence at species level is 30%, it’s more honest to show "Family Fringillidae (85%)" than a specific species with low accuracy.

Why Frame Buffering is Critical

Frame buffering is the only way to get a sharp photo of a moving animal. Compare with standard capture:

Capture method Proportion of blurry shots Delay Recommendation
capturePhoto() (standard) ~30% instant For static objects
Frame buffering + sharpness scoring ~10% delay 0.3–0.5 s For moving animals

Frame buffering reduces the proportion of blurry shots threefold compared to standard capture.

Fast Capture for Moving Objects

// iOS: frame buffering to select the best frame class AnimalCaptureViewController: UIViewController { private var frameBuffer: [CMSampleBuffer] = [] private let bufferSize = 10 // last 10 frames func captureOutput(_ output: AVCaptureOutput, didOutput sampleBuffer: CMSampleBuffer, from connection: AVCaptureConnection) { frameBuffer.append(sampleBuffer) if frameBuffer.count > bufferSize { frameBuffer.removeFirst() } } // On button press — select least blurry frame from buffer func captureWithMotionCompensation() -> UIImage? { return frameBuffer .compactMap { UIImage(from: $0) } .max(by: { sharpnessScore($0) < sharpnessScore($1) }) } } 

This approach reduces blurry shots threefold compared to standard capturePhoto().

Licensing and Legal Aspects

When using iNaturalist API, comply with their terms: non-commercial use is free, commercial use requires a subscription. For App Store Review, you need to indicate use of App Tracking Transparency (ATT) if you collect data for training.

Work Process

  1. Requirements analysis — define animal classes, shooting conditions, target number of species.
  2. Model selection — iNaturalist, custom CoreML or TFLite depending on the task.
  3. SDK integration — turnkey for iOS (Swift) and Android (Kotlin).
  4. Capture optimization — frame buffering, sharpness scoring, adaptation for low light.
  5. Testing on real photos — accuracy evaluation, A/B testing with users.
  6. Post-release support — taxon database updates, adjustments for new OS versions.

What's Included

  • Integration and setup documentation.
  • Store access (App Store Connect, Google Play Console).
  • Team training on SDK usage.
  • 30-day post-release support.

Why Choose Us

We have certified iOS and Android developers, experience with iNaturalist API, and guarantee classification accuracy of 85%+ for popular species. We deliver turnkey: from model selection to store publication. Contact us — we’ll evaluate your project in one day. Order animal recognition implementation today.

Timeline Estimates

Integration of a single API or Seek SDK with basic UI — 1 day. Adding frame buffering, animal description card with links to iNaturalist, recognition history — up to 2 days for a basic task, up to 1.5 weeks for non-standard requirements.