Giter Site home page Giter Site logo

teoge / marktoolforparkinglotpoint Goto Github PK

View Code? Open in Web Editor NEW
80.0 3.0 24.0 968 KB

A tool for parking-slot labeling under surround-view image

License: GNU General Public License v3.0

MATLAB 100.00%
labeling-tool parking-slot parking-slot-detection matlab-gui matlab image-labeling image-labeling-tool computer-vision

marktoolforparkinglotpoint's Introduction

MarkToolForParkingLotPoint

This is MATLAB GUI tool for marking parking lot point or something like that. The latest version can be found at here: https://github.com/Teoge/MarkToolForParkingLotPoint

Requirement

MATLAB (In windows, please set your display setting to 100% to fully display the GUI.) For small screen in notebook, use the fig file in folder "SmallScreenUI" instead. (Replace the main.fig in root folder with the main.fig in "SmallScrennUI")

How to use:

1. Read Image

Clone or download the source.

  1. Start up MATLAB and run main.m.
  2. Enter the folder your images in, or use "Choose Folder" button to select folder.
  3. Select correct format of your images, and click "Read" button.
  4. Use "Previous" and "Next" button, or left arrow key and right arrow key to navigate through the images.

The program will read images of corresponding format in a sequence and the total number of images will be shown below the "read" button. The first image will be loaded automatically. The sequence number and name of it will be shown below the figure.

2. Mark Marks

After you have loaded an image, find parking-slot marking-points.

  1. Click left mouse button on an image to mark marks.
  2. Click right mouse button on a mark to delete it.
  3. After marking marks, click "Save" button or "F" on the keyboard to save the marks to file.

The mark consists of a point, a circle, and an index number at the right bottom corner. Click right mouse button inside the circle to delete the mark. The marks will be save as a "mat" file with the same name of the image in the same folder. Refer to MATLAB documentation for more information about operating "mat" file.

3. Mark Parking Slots

After you have marked your marks, fill the table on the right to mark parking slots.

  1. Find a parking slots in the image with two markinhg-points you have marked.
  2. Fill the index numbers of two points in the first and second column in a row.
  3. Fill the type number of the parking slots according to the type of parking-slots and the sequence you fill two points.
  4. Fill the angle of parking slots in degree form. For vertical slots as type 1, you should fill in 90. For slanted slots as type 2, you should fill in a degree less than 90. For slanted slots as type 3, you should fill in a degree more than 90.
  5. Click "Save" button or "F" on the keyboard to save the parking slots to file.

Parking slots are divided into three types, which is defined by us. Type 1 refer to the right-angle parking slots. Type 2 and 3 refer to slanted parking slots in different direction.

The following images show three types of parking slot. For each image, the marking-point on the left hand side should be the first point you enter in the table. The marking-point on the right hand side should be the second point you enter in the image.

ParkingSlotType1 ParkingSlotType2 ParkingSlotType3
ParkingSlotType1 ParkingSlotType2 ParkingSlotType3

Advanced Functionality

  1. Click left mouse button without releasing to drag a mark.
  2. Use mouse scroll wheel to zone in and zone out of the figure. When in the zone in mode, use left mouse button to drag across the image, while the ability of creating marks with left mouse button is disable.
  3. Press "W", "A", "S" and "D" keys on the keyboard to fine tune the position of the selected mark. The index of selected mark will be shown on the right of image. By default, none of the marks is selected, and the index should be zero. When you click on a mark or drag it, the mark will be selected. When you zone in, if selected mark is not within the zone in range then it will be deselect.
  4. Use"Q" and "E" on the keyboard to perform "Save" + "Previous" button function and "Save" + "Next" button function.
  5. Use "Turn to Page" function to fast index to certain page.
  6. Use "DELETE" button to delete current image and label. (Warning: the delete is permanent.)
JSON

A simple function mat2json.m is provided in case you want to read the label file with other language.

marktoolforparkinglotpoint's People

Contributors

teoge 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

Watchers

 avatar  avatar  avatar

marktoolforparkinglotpoint's Issues

Save the marking points

Hello teogo,

Thanks for providing the tool for researchers.
hen I tried to use tool, after i Mark the points i got .mat file and then used mat2json scrip to convert .
I even got the .json file...

But the .json file which u provided in DMPR paper dataset-json file, has
[x1,y1,x2,y2,0/1] as marks, but when i generated i got only [x1,y1] as marks.

Could u kindly provide how to generate the .json file format of yours.
I look forward for prompt reply.

Thanks,
Anil.

环视鱼眼相机拼接鸟瞰图

你好!
请问怎样可以联系到你,希望能请教一些事情,
关于环视鱼眼相机拼接鸟瞰图的软硬件同步,你们是如何实现的?

祝身体健康!学业顺利!

Training with addition of new type

Hello Teoge,

I want to add on more type of OPEN Slot parking type, following steps done

  1. Labelled new type of Open SLOT Type with index number "2"....
    Now "0"---> for T Slot, "1"--->for L Shaped and "2"--->Open SLot.
  2. Prepared dataset as per your code recommendations.
  3. Trained the model, with above dataset for 20EPOCHS and finally model got trained.
  4. Now during inference, observed that the marking_points.shape value,
    For L-Shaped and Open Shaped value greater then (>) 0.5
    T-Shaped value is very less i.e. less then 0.5

I'm unable to differentiate the shapes between L and Open Shape parking slots.
I kindly request you to provide information, how to differentiate between the shape types from model, do we need to change config parameter during training itself so that we get different shape values for different parking shapes.

I request you to provide some information for above regards.

Thanks,
Anil.

读取图片报错,Incorrect images ratio

请问下,我在标注自己的数据集,发有一些图片能正常标注,有一些图片出现以下问题:
Incorrect images ratio

image

这种情况可能是那种原因导致的,应该如何解决呢?

数据标注问题

非常抱歉打扰您,我有个问题需要向您请教一下,为什么PS2.0的marks里面包含五个数值
{"marks":[[240.47823834196888, 57.812953367875636, 87.008086253369285, 49.487870619946136, 0],
而我使用您的标注软件生成的json文件时marks里面只有X,Y坐标的值
{"marks":[[76.212347354138473,444.59769335142482],
请问您是怎么样实现的呢?是在标注软件中自动生成的吗?
期待您的回复!
非常感谢!

点击Show Slots按钮,没有显示车位线

请问下,在使用MarkToolForParkingLotPoint标注自己数据集时,发现点击Show Slots按钮,没有显示车位线
image
这种情况可能是那种原因导致的,应该如何解决呢?

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.