== PyOSSIM : Google Summer of Code, 2011 Project Page == '''Student Name''' [[BR]] Vipul Raheja '''Aim of the project''' [[BR]] The aim is to expose the OSSIM and OSSIMPlanet API to Python in order to extend their functionalities to other essential GIS and remote sensing analysis tools like GRASS, QuantumGIS and libraries like GDAL etc. The software package consists of: * Software libraries, * Command line tools, and * GUI applications OSSIM already has some API exposed using the SWIG interface as wrapper. Hence, The Python bindings for the core library will be used to write a toolbox based on the OSSIM function as an extension to GRASS and QGIS for image analysis while the python bindings for the OSSIMPlanet API will be used to extend the [http://web.me.com/epiesasha/PlanetSasha/Project.html PlanetSasha] functionalities inside the respective GRASS and QGIS plug-in. '''Project Proposal is listed at:''' [[BR]] [http://www.google-melange.com/gsoc/proposal/review/google/gsoc2011/acemcloud/4001 GSoC Proposal] '''Old Page can be seen at:''' [[BR]] [http://web.me.com/epiesasha/PlanetSasha/2010Project.html PlanetSasha] '''Project repository present at:''' [[BR]] [https://github.com/vipulraheja/PYOSSIM Github Code Repository] [[BR]] === Week 1 Report === '''Work Done''' * Delved into the requirements for PyOSSIM by understanding the source code structure better * Set up the following: * Wiki Page * Code Repository * Local development environment by downloading and building the OSSIM Source '''Problems Faced''' [[BR]] Mostly I had issues with the building part only. There were problems when I disabled video to keep the {{{ ossimPredator }}} disabled and out of the build - this was done initially to handle problems posed by {{{ ffmpeg }}} while building, so it was decided to keep it out of the build and make a cleaner build. But that had many other dependencies to be taken care of including the various {{{ CMakeLists.txt }}} files to handle the same. Due to incomplete handling, the build was giving problems and not compiling completely. [[BR]] But later, the build compiled smoothly on a fresh machine running Ubuntu Maverick (earlier it was Lucid). '''Work to be done in Week 2''' * Read and understand about Python/C++ API * Start to read and learn about SWIG wrapping techniques and so as to understand the general python wrapping better and the problems exposed by it in context of OSSIM * Get an idea about {{{ oms.i }}} - the SWIG-Java wrapping interface for OSSIM, and start understanding it to 'Pythonize' it in the future. [[BR]] === Week 2 Report === '''Work Done''' * Read quite a chunk of the [http://swig.org/Doc2.0/SWIGDocumentation.html SWIG 2.0 Documentation] so as to understand the lower-level details of language wrapping techniques, specifically in context of Python and C/C++. * Read about Python embedding and extension, so as to understand how Python facilitates the addition of a new set of commands for extending it's interpreter with new modules. '''Problems Faced''' [[BR]] None as yet '''Work to be done in Week 3''' * Continue reading and start dive into the OSSIM SWIG interface.