Coder Social home page Coder Social logo

cbm's Introduction

Image of European Commission

Code examples for "CAP Checks by Monitoring” (CbM)

European Commission, Joint Research Center

This work is in progress and may be subject to frequent changes

The European Commission promotes the use of new technologies in the context of the Common Agricultural Policy (CAP) and the Integrated Administration and Control Systems (IACS) which are managed by the European Union Member States. In 2018, "Checks by Monitoring" (CbM) were introduced for area-based support schemes. The EU Paying Agencies (PA) who adapt CbM will migrate to the use of Copernicus Sentinel data to check aid applications.

CbM applies to the complete territory of the Member States and makes use of continuously updated data streams from the Sentinel-1 and -2 sensors. This implies the use of Big Data Analytics solutions, that require parallel processing compute infrastructure, such as cloud services. In support to CbM implementation the European Commission's science and knowledge service, the Joint Research Center (JRC), demonstrates compute solutions that are modular and built exclusively on open source components. Although the modules are tailored to use on a cloud infrastructure, such as Copernicus DIAS (Data and Information Access Services), most can run on single platform solutions as well. Central to the modules is the use of a spatial database component for storage of PA parcel data sets, metadata storage and process control. Most processes read from the database, execute relevant tasks, and (may) store results back in the database.

A core concept in CbM is reduction. This is currently implemented primarily as statistics extraction, which can then be used in subsequent analytics. Examples modules that apply machine learning for outlier analysis have been developed. Other components are aimed at providing access to users that need analytical outputs for reporting, or data extraction, including image extracts, for further client-side detailed analysis.

This code repository provides access to the CbM project code, which can be set up, configured and run on an in-house or cloud computing infrastructure for development and testing purposes. The modular approach is documented in the Wiki pages.

Prerequisites

To start CbM it is essential to have:

  1. Computing resources
  2. Copernicus Analysis Ready Data (CARD)
  3. Valid agricultural parcel data (FOI compliant)

Deployment

There are several steps to set up the core components for Checks by Monitoring. These steps require different types of technical expertise.

  • Install server applications

    • Docker (containerization system)
    • Postgres database with PostGIS extension
    • Jupyter (interactive analysis and visualization environment)
  • Adding data to the database

    • Parcels data to database
    • CARD Metadata and other required data
  • Running code examples

    • Parcel extraction routines
    • Machine learning algorithms
    • Database backups
    • Analytical routines (e.g. market detection)
  • Accessing and viewing results

    • Building RESTFul API
    • Using Jupyter Notebooks

See the documentation at jrc-cbm.readthedocs.io for more details and setup instructions.

Structure

This repository (cbm) contains example scripts and documentation to get started with CbM, includes:

  • api - Modules to build a RESTful API for CbM
  • cbm: Python library
    • card2db : Transfer metadata from the DIAS catalog
    • extract : Parcel extraction routines
    • foi : FOI modules
    • get : Download data to local directory
    • ipycbm : Interactive notebook widgets
    • report : Export reports
  • docker/: Docker image files for:
  • docs/: Documentation pages (see jrc-cbm.readthedocs.io)
  • ipynb/: Jupyter Notebook examples
  • scripts/: Python scripts for:
    • extraction : Parcel extraction routines
    • calendar_view : Time series calendar view
  • tests/: Test scripts for testing a variety of functionalities.

See the documentation at jrc-cbm.readthedocs.io for more details.

Contributing

Please read "creating-a-pull-request" for details on the process for submitting pull requests.

Authors

  • Guido Lemoine - Initial work - glemoine62
  • Konstantinos Anastasakis - Initial work - konanast

See also the list of contributors who participated in this project.

License

This project is licensed under the 3-Clause BSD License - see the LICENSE file for details.

Copyright (c) 2021, European Commission, Joint Research Centre. All rights reserved.

cbm's People

Contributors

konanast avatar csabawirnhardt avatar borioda avatar feurbano avatar glemoine62 avatar voicagi avatar gabbaan avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.