Metadata-Version: 2.1
Name: deepgeo
Version: 0.0.9
Summary: Easy Deep Learning
Home-page: https://github.com/awarematics/postgeomedia
Author: Donggun LEE
Author-email: gnyotnu39@gmail.com
License: MIT
Platform: UNKNOWN
Classifier: License :: OSI Approved :: MIT License
Description-Content-Type: text/markdown

# Deep Geo
- Easy Deep Learning
 - Copyright (c) 2019 [InfoLab](http://infolab.kunsan.ac.kr) ([Donggun LEE](http://duration.digimoon.net))
  - PIP : https://pypi.org/project/deepgeo/
- Demo
  - [deepGeo.io](http://deepGeo.io)
  - [DeepGeo.io](http://duration.digimoon.net/dev/deepGeo/test/)
- How to install
  ```bash
  pip install deepgeo
  ```
  - other version
    ```bash
    # 0.0.1
    pip install deepgeo==0.0.1

    # 0.0.9
    pip install deepgeo==0.0.9
    ```
   - requirement
      - Python 3.6
      ```bash
      pip install tensorflow-gpu==1.9.0 exifread>=2.1.2 piexif>=1.1.2 pillow>=6.0.0 matplotlib>=3.1.0 scikit-image>=0.15.0 IPython>=7.5.0 keras>=2.2.4 cython>=0.29.7
      ```
- How to use
  - Import DeepGeo
    ```python
    import deepgeo
    ```
  - detect
    ```python
    engine = deepgeo.Engine()

    # add model
    engine.add_model('mscoco','maskrcnn','D:/test/config.json')

    # create image
    image = deepgeo.Image('uri')
    engine.detect('mscoco',image)
    print(image)

    ... etc ...
    ```
   - extends function
     ```python
     import sys,os,json

     def init_loading_bar(max):
       max_ = str(max)
       sys.stdout.write("%s/0" % max_)
       sys.stdout.flush()
       sys.stdout.write("\b")

     def update_loading_bar(num):
       sys.stdout.write("%s" % str(num))
       sys.stdout.flush()
       sys.stdout.write("\b" * len(str(num)))

     def final_loading_bar():
       sys.stdout.write("\n")

     def fjson_to_imgs(engine, dataset_name, path, image_path):
       file_list = os.listdir(path)
       file_list.sort()
       init_loading_bar(len(file_list))
       count = 0
       for item in file_list:
           count+=1
           update_loading_bar(count)
           if item.find('.json') is not -1:
               data=None
               with open(path+item) as data_file:    
                   data = json.load(data_file)
               engine.add_data('mscoco',dataset_name,deepgeo.Image(data['uri'],image_path,data['annotations']))
               del data
       final_loading_bar()
       del count
       del file_list
     ```
   - train
     ```python
     engine = deepgeo.Engine()
     engine.add_model('mscoco', 'maskrcnn', 'D:/test/config.json')
     engine.add_dataset('mscoco','train','maskrcnn')
     engine.add_dataset('mscoco','val','maskrcnn')
     fjson_to_imgs(engine, 'train','D:/test/val2017/json/','D:/test/val2017/images/')
     fjson_to_imgs(engine, 'val','D:/test/val2017/json/','D:/test/val2017/images/')

     ## Training...
     print(" > STEP3 : Fine tune all layers")
     engine.set_config('mscoco',{"EPOCHS":160, "LAYERS":'all',"LEARNING_RATE":engine.get_config('mscoco',"LEARNING_RATE")/10})
     engine.train('mscoco',"train","val",None)

     ... etc ...
     ```


