sunset1995 / pytorch-layoutnet

Pytorch implementation of LayoutNet.
MIT License
171 stars 39 forks source link

How to annotate panorama #8

Open dengzhijie opened 6 years ago

dengzhijie commented 6 years ago

Hello First, thanks for your sharing . We want to use new indoor panorama samples for training, but how to annotate panorama as shown in the appendix becomes a trouble for us. Could you share the method or some tools to do the work? Thank you! camera_0bc03a051e9d4bed8e9191e263142f17_office_9_frame_equirectangular_domain_ camera_0bc03a051e9d4bed8e9191e263142f17_office_9_frame_equirectangular_domain_

sunset1995 commented 6 years ago

Hi, You could try https://github.com/SunDaDenny/PanoAnnotator which is developed in python. You should get the corner position on the image annotated by above tool. Constructing boundary/corner probability map from corner position is simple in mathematic.

Good luck ;)

dengzhijie commented 6 years ago

@sunset1995 Really thanks for your reply! I will try this way later.In addition,I have another question to consult you.When I use the official model to process panoramic pictures,sometimes we get the result of a corner migration as shown in the annex. How can I get a better result?Can I get a good result after 3D layout optimization? Thanks much! Good luck 112_bon

sunset1995 commented 6 years ago

Hi @dengzhijie Maybe you could try flipping/horizontal rotation as testing augmentation first. I suggest flipping, clip right most 33% to left, clip right most 66% to left. After getting the result of each augmented version, undo augmentation and take the mean. You could reference LayoutNet papers Table1,2,3 for some benchmark of 3D optimization.

dengzhijie commented 6 years ago

@sunset1995 Thanks! 👍 :)

glacierwl commented 5 years ago

I have got the corner id position, but I don't know how to get the boundary/corner probability map like the dataset in the repository.Can you tell me ?Thank you @sunset1995

sunset1995 commented 5 years ago

Hi @glacierwl,

Maybe you can trace the original repo LayoutNet (I'm just simply downloaded the processed datas without processing myself).

Or you can tried my new project on layout estimation: HorizonNet. For training/finetuning on your own dataset, simply put all image under data/your_datas/*.png and the corner positions on the equirectangular image under data/your_datas/*.txt. All images should in the size of 512 x 1024 and below is an example of the corners txt:

123 115
123 378
426 141
426 353
680 180
680 318
824 175
824 323

where the first column is x positions and second column is y position on your image.

glacierwl commented 5 years ago

Actually,I have tested my dataset(panorama+corner position) using HorizonNet before. When I want to test them using LayoutNet, I get stuck in the puzzle about the conversion from corners txt to edge map and corner map. I have found some codes in the original repo,Thank you.@sunset1995

glacierwl commented 5 years ago

I have generated edge map and corner map from label.txt and panorama.Just revise some codes in this link.