Git Product home page Git Product logo

ttpla_dataset's Introduction

TTPLA: An Aerial-Image Dataset for Detection and Segmentation of Transmission Towers and Power Lines

TTPLA is a public dataset which is a collection of aerial images on Transmission Towers (TTs) and Powers Lines (PLs). This is the official repository of paper TTPLA: An Aerial-Image Dataset for Detection and Segmentation of Transmission Towers and Power Lines.

Screenshot

The repository includes:

  • The original images of TTPLA dataset with pixel level annotation in COCO format. The dataset images here (updated March 2021).
  • Splitting text files contain a list of images names after splitting to train.txt, validate.txt, and test.txt.
  • Weights of training models based on two different backbones and three different image sizes.

Preparation data:

  1. Modify resize_image_and_annotation-final.py to use the target image dimension (line 10). Then, call the script using python resize_image_and_annotation-final.py -t <images_path>. It will produce new folder called sized_data.

  2. Then call remove_void.py to remove void label if you would like to remove it. python remove_void.py -t <sized_images_path>. It will produce new folder called newjsons, you may renamed to whatever is fit.

  3. Based on three lists of train.txt, test.txt, and val.txt, split_jsons.py is used to split the created newjsons to three folders train , val, and test to prepare this before get the COCO json file.You can use the following command. python split_jsons.py -t newjsons/. It will produce new folder called splitting_jsons, you may renamed to whatever is fit.

  4. Use labelme2coco_2.py to get the COCO_json that used by Yolact. python labelme2coco_2.py splitting_jsons/train_jsons/. This step is done for three folders train_jsons , val_jsons, and test_jsons.

Tips to use our files directly

  • Install yolact Yolact.
  • Rename yolact folder to yolact700. Based on different sizes, it can rename also to yolact550 or yolact640.
  • In setp 1 in Prepration data, rename the generated sized_data folder name to data_700x700 and upload in yolact700/data/data_700x700. Based on different sizes, data_550x550 and data_640x360 are the other named folders with different sizes.
  • Use the suitable configuration from next table according to image size and backbone. Rename the picked config file to config.py and insert in yolact700/data/.
  • The generated json from step 4 in Prepration data, rename to train_coco_700x700, 2_test_json700, 2_val_json700 and put them into yolact700/data/ if you would like to use our config file directly or you can use any name and modify the pathes into config file.

Train Model:

For train image for example with size 700x700,

python train.py --config=yolact_img700_val_config --batch_size=8 --resume=weights/yolact_img550_108_12253_interrupt.pth

For evaluation,

python eval.py --config=yolact_img550_secondtest_config --mask_proto_debug --trained_model=weights/weights_img550_resnet50/yolact_img550_400_30061_resnet50_sep7_2217.pth --fast_nms=false

Evaluation:

Image Size Backbone configs weights
640 x 360 Resnet50 config_img640_resnet50_aspect.py yolact_img640_secondval_399_30000_resnet50.pth
550 x 550 Resnet50 config_img550_resnet50.py yolact_img550_399_30000_resnet50.pth
700 x 700 Resnet50 config_img700_resnet50.py yolact_img700_399_30000_resnet50.pth
640 x 360 Resnet101 config_img640_resnet101_aspect.py yolact_img640_secondval_399_45100_resnet101.pth
550 x 550 Resnet101 config_img550_resnet101.py yolact_img550_399_45100_resnet101_b8.pth
700 x 700 Resnet101 config_img700_resnet101.py yolact_img700_399_45100_resnet101_b8.pth

Results:

Average Precision for Different Deep Learning Models on TTPLA is reported in the following table

results

Citation:

@inproceedings{abdelfattah2020ttpla,
  title={TTPLA: An Aerial-Image Dataset for Detection and Segmentation of Transmission Towers and Power Lines},
  author={Abdelfattah, Rabab and Wang, Xiaofeng and Wang, Song},
  booktitle={Proceedings of the Asian Conference on Computer Vision},
  year={2020}
}

Contact:

For questions about our paper or code, please contact Rabab Abdelfattah.

ttpla_dataset's People

Contributors

r3ab avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

ttpla_dataset's Issues

share code

would you share with me the method you used, thanks!

Unable to run the evaluation using yolact after following the steps (Issue: Namerror)

Hello @R3ab,
Thankyou for sharing your work with us. I am not able to run the inference using yolact repo even after following all the steps you have mentioned your repo. I am getting the following error when I run the evaluation command NameError: name 'yolact_img550_secondtest_config' is not defined. Please let me know if am missing something or please share the solution for this issue?. Thanks again.

the weight link of yolact_img640_secondval_399_30000_resnet50.pth is error?

hi,everybody
i want to download the default weight file of the image size 640*360,backbone is rest50,hi,
when i download the weight file link,i find the fact file is yolact_img700_399_45100_resnet101_b8.pth in google driver,but the label is yolact_img640_secondval_399_30000_resnet50.pth , please tell me ,is it ok?

Resize image script has a problem

Resize image script has a problem

Hi @R3ab,
Can you give me some advice?

Resize command

python ./scripts/resize_image_and_annotation-final.py -t ./images

Sized_data Folder

Images have been resized!

Screenshot from 2021-03-30 16-52-49

View on labelme

But, when I show dataset on labelme.

Screenshot from 2021-03-30 16-47-56

Labelme Error Logs

[ERROR  ] label_file:_check_image_height_and_width:160 - imageWidth does not match with imageData or imagePath, so getting imageWidth from actual image.

reason

I think this error is caused by the "imageData" in the .json file of the image is encrypted.

yolact_img700_399_30000_resnet50 results doesn't match

I tested the provided yolact_img700_399_30000_resnet50.pth on the test set and got 21.11 box mAP and 16.15 mask mAP, which doesn't match the table in README.md. Has something been changed?

I noticed that the paper mentioned having 1100 images, but the latest dataset contains 1242 images, could this be the reason?

labels

can i have the labels files which contains all labels name in this plss

Unable to extract images

When I try to unzip the .zip file downloaded from your google drive link it says that the file is corrupted and therefore can't extract the images and annotations. Is there something wrong with the file or is it just me?

Step 5 in preparation data missing

Hey @R3ab ,
You mentioned about step 5 in preparation data to generate the .json file used for training but I can only see 4 steps. Could you please guide me how to generate "train_coco_700x700.json" file for training?

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.