icey-zhang / superyolo Goto Github PK
View Code? Open in Web Editor NEWSuperYOLO is accepted by TGRS
SuperYOLO is accepted by TGRS
When I enter this line of code, I get the following error - "python test.py --weights weights/YOLOv5s/multi/yolov5s_multi_fold1.pt --input_mode RGB+IR+MF". How should I solve this problem? There are two files in your models folder, "yolors.py" and "SRyolo.py", will these two files help my problem? Thank you and wish you a happy life
train: Scanning 'D:\SuperYOLO-main\dataset\VEDAI_1024\images.cache' for images and labels... 0 found, 1089 missing, 0 empty, 0 corrupted: 100%|██████████| 1089/1089 [00:00<?, ?it/s]
Traceback (most recent call last):
File "D:/SuperYOLO-main/train.py", line 673, in
train(hyp, opt, device, tb_writer)
File "D:/SuperYOLO-main/train.py", line 216, in train
image_weights=opt.image_weights, quad=opt.quad, prefix=colorstr('train: '))
File "D:\SuperYOLO-main\utils\datasets.py", line 101, in create_dataloader_sr
prefix=prefix)
File "D:\SuperYOLO-main\utils\datasets.py", line 701, in init
assert nf > 0 or not augment, f'{prefix}No labels in {cache_path}. Can not train without labels. See {help_url}'
AssertionError: train: No labels in D:\SuperYOLO-main\dataset\VEDAI_1024\images.cache. Can not train without labels. See https://github.com/ultralytics/yolov3/wiki/Train-Custom-Data
你好,超分分支,L1损失是由Ground——Truth监督训练吗
您好!在readme文件中,是否可以较为详细的说明下RGB、IR、RGB+IR+MF、RGB+IR+fusion几种模式下,应该如何修改配置和运行命令?
另外,如果不使用超分辨率分支辅助训练的话,上述几种模式如何设置?谢谢!
Is it possible to use --multi-scale option in training?
In my case, there is an error of "sr_loss = 0.1*(torch.nn.L1Loss()(ouput~~)" in the line 512 in train.py.
Could you help me in this case?
Thank you so much.
python train.py --cfg models/SRyolo_noFocus_small.yaml --train_img_size 512 --data data/SRvedai.yaml --ch 4 --input_mode RGB+IR File "D:\Anaconda\envs\super\lib\site-packages\torch\nn\modules\module.py", line 1190, in _call_impl
return forward_call(*input, **kwargs)
File "E:\SuperYOLO\models\deeplabedsr.py", line 60, in forward
x_sr= self.sr_decoder(x, low_level_feat,self.factor)
File "D:\Anaconda\envs\super\lib\site-packages\torch\nn\modules\module.py", line 1190, in _call_impl
return forward_call(*input, *kwargs)
File "E:\SuperYOLO\models\sr_decoder_noBN_noD.py", line 38, in forward
x = F.interpolate(x, size=[i(factor//2) for i in low_level_feat.size()[2:]], mode='bilinear', align_corners=True)
File "D:\Anaconda\envs\super\lib\site-packages\torch\nn\functional.py", line 3950, in interpolate
return torch._C._nn.upsample_bilinear2d(input, output_size, align_corners, scale_factors)
RuntimeError: Input and output sizes should be greater than 0, but got input (H: 16, W: 16) output (H: 0, W: 0)
请帮忙看下如何解决这个问题,我将万分感谢
在训练的时候glops计算量不显示是怎么回事
Thank you for releasing the code!
Results from the proposed method is quite impressive to me.
I tried to test the code with pretrained weights,
but the download link via Baidu is not possible for me(maybe because it's outside of china)
Is there any other way or link to download the pretrained weights?
Thank you,
你好,看来您的代码,请问图片是{a}_ir.png和{a}_co.png,而标签是{a}导致无法训练这种问题该如何解决呢?
Here, factor = 1 and low_level_feat = [64, 64]
please help me. .
Error message :
Exception has occurred: RuntimeError
Input and output sizes should be greater than 0, but got input (H: 16, W: 16) output (H: 0, W: 0)
File "/home/server-3/desktop/yeona/SuperYOLO-main/models/sr_decoder_noBN_noD.py", line 38, in forward
x = F.interpolate(x, size=[i*(factor // 2) for i in low_level_feat.size()[2:]], mode='bilinear', align_corners=True)
File "/home/server-3/desktop/yeona/SuperYOLO-main/models/deeplabedsr.py", line 60, in forward
x_sr= self.sr_decoder(x, low_level_feat,self.factor)
File "/home/server-3/desktop/yeona/SuperYOLO-main/models/SRyolo.py", line 243, in forward_once
output_sr = self.model_up(y[self.l1],y[self.l2]) #在超分上加attention
File "/home/server-3/desktop/yeona/SuperYOLO-main/models/SRyolo.py", line 190, in forward
y,output_sr,features = self.forward_once(steam,'yolo', profile) #zjq
File "/home/server-3/desktop/yeona/SuperYOLO-main/models/SRyolo.py", line 117, in init
m.stride = torch.tensor([s / x.shape[-2] for x in self.forward(torch.zeros(1, ch_steam, s, s),torch.zeros(1, ch_steam, s, s),input_mode)[0]]) # forward
File "/home/server-3/desktop/yeona/SuperYOLO-main/train.py", line 102, in train
model = Model(opt.cfg, input_mode = opt.input_mode ,ch_steam=opt.ch_steam,ch=opt.ch, nc=nc, anchors=hyp.get('anchors'),config=None,sr=opt.super,factor=down_factor).to(device) # create
File "/home/server-3/desktop/yeona/SuperYOLO-main/train.py", line 673, in
train(hyp, opt, device, tb_writer)
RuntimeError: Input and output sizes should be greater than 0, but got input (H: 16, W: 16) output (H: 0, W: 0)
您好,请问如果想得到最后的超分辨率结果应该如何做呢,我们想得到通过SR分支后的1024的图像,并且计算其PSNR值和SSIM,您有什么建议吗
i put my dataset like yolov5 usually but got wrong, thanks
请问yaml文件中的l1 l2 c1 c2的作用是什么
Hi, I am trying to run the test code that is provided.
Only when using the model weights "SuperYOLO_fold1_best.pt" and using the VEDAI dataset, the test.py code isn't working.
Traceback (most recent call last):
File "C:\Users\gsvpk\VScode\Own_Projects\superOG\test.py", line 374, in
test(opt.data,
File "C:\Users\gsvpk\VScode\Own_Projects\superOG\test.py", line 65, in test
model = attempt_load(weights, map_location=device) # load FP32 model
File "C:\Users\gsvpk\VScode\Own_Projects\superOG\models\experimental.py", line 118, in attempt_load
ckpt = torch.load(w, map_location=map_location) # load
File "C:\Users\gsvpk\anaconda3\envs\deeplearning\lib\site-packages\torch\serialization.py", line 809, in load
return _load(opened_zipfile, map_location, pickle_module, **pickle_load_args)
File "C:\Users\gsvpk\anaconda3\envs\deeplearning\lib\site-packages\torch\serialization.py", line 1172, in _load
result = unpickler.load()
File "C:\Users\gsvpk\anaconda3\envs\deeplearning\lib\site-packages\torch\serialization.py", line 1165, in find_class
return super().find_class(mod_name, name)
ModuleNotFoundError: No module named 'models.deeplab'
I have put the weights in the "weights" folder and the VEDAI/VEDAI1024 folders in the "dataset" folder.
Do you have any idea to how this can be resolved? Thank you in advance!
使用自己的训练集训练模型应该怎样整理数据集结构?
I've noticed that while evaluating the model after finetuning on my own data, the output images in the runs/test folder are sometimes negative (inverted colors of the image inputted). This is not consistent, as an inverted image in one run will not be the same as another. I've looked through the code, but couldn't find anything that would be causing this or be using it as a processing step. Any help would be appreciated!
希望作者早日发布,谢谢
hello
thanks for implentation sharing
it was interesting for me.
is it possible to train SUPER-YOLO on other datasets such as VisDrone?
thank you.
super-yolo训练时,输入图像分辨率是1024的吗,在transform.py文件以及提供的数据集中都看到,训练时采用10241024图片作为输入,512512图片作为测试。文章中的结果也是按照这个设置展开的吗?
Hi, and thanks for this great work.
I trained SuperYOLO with train_image_size =1024 and test_image_size=512 on VisDrone dataset and I want to compare the mAP result with YOLOv5, but I was not sure if I have to compare SuperYOLO with YOLOv5 that was trained on 512 image-size or 1024 image-size?
有预训练权重文件吗?
Thank you for the google link of pretrained data.
I tested the pretrained data and have another question.
I downloaded the VEDAI dataset from the web site of "https://downloads.greyc.fr/vedai/"
because of the same link problem.
There are 10 fold related text files(fold01.txt~fold10.txt) in the folder of "Annotations512" from the web site.
Are those files same to the files of [baiduyun](your Baidu link)?
Thank you,
Hi, thanks for your amazing works. I have some question about SR module.
This paper achieves small object detection without utilizing the super resolution modul. So how this research paper achieves small object detection.
Thanks a lot
Scaled weight_decay = 0.0005
train: Scanning 'D:\xxx\SuperYOLO-main\dataset\VEDAI_1024\images.cache' for images and labels... 0 found, 1089 missing, 0 empty, 0 corrupted: 100%|██████████| 1089/1089 [00:00<?, ?it/s]
Traceback (most recent call last):
File "D:/xxx/SuperYOLO-main/train.py", line 673, in
train(hyp, opt, device, tb_writer)
File "D:/xxx/SuperYOLO-main/train.py", line 212, in train
dataloader, dataset = create_dataloader(train_path, imgsz, batch_size, gs, opt,
File "D:\xxx\SuperYOLO-main\utils\datasets.py", line 92, in create_dataloader_sr
dataset = LoadImagesAndLabels_sr(path, imgsz, batch_size,
File "D:\xxx\SuperYOLO-main\utils\datasets.py", line 701, in init
assert nf > 0 or not augment, f'{prefix}No labels in {cache_path}. Can not train without labels. See {help_url}'
AssertionError: train: No labels in D:\xxx\SuperYOLO-main\dataset\VEDAI_1024\images.cache. Can not train without labels. See https://github.com/ultralytics/yolov3/wiki/Train-Custom-Data
Process finished with exit code 1
> 你好,我看了你的源码,但是我的代码能力很有限
没有看到在哪的代码中体现出来测试的时候512的图没有经过下采样
没有downsample
Originally posted by @icey-zhang in #26 (comment)
我在DOTA数据集上进行训练时,参数设为RGB无法跑通,想问下有什么解决方法呢?谢谢
请问代码已经完全开源了吗
非常感谢您的工作,我能够复现您在VEDAI数据集上的训练过程,但我更想使用您的模型在自己的数据集上进行训练,可以麻烦您在readme里给出一些指导吗?
因为我把您给出训练命令中的数据集文件直接替换后并不能进行训练,替换后的命令如下:
python train.py --cfg models/SRyolo_noFocus_small.yaml --super --train_img_size 1024 --hr_input --data data/custom.yaml --ch 3 --input_mode RGB --epochs 1 --device 2
此外我对于train.py里面的--ch_steam和--ch意义也不太明了,这给我带来了很大的困扰。如您愿意给予更多的指导,我也非常愿意进行有偿咨询!
您好,我这边在训练时,按照您的步骤先下载数据集然后transform,运行只训练RGB,还是出现标签找不到:No labels in D:\experienment\SuperYOLO-main\SuperYOLO-main\dataset\VEDAI_1024\images.cache. Can not train without labels;您知道这该如何解决么
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.