GithubHelp home page GithubHelp logo

borderdet's People

Contributors

lxtgh avatar maycbj avatar poodarchu 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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

borderdet's Issues

一个不成熟的小建议

里面的文件夹太多了,与BorderDet无关的.py文件也太多了,小白看起来太累了,搞不清楚哪里是哪里,,,
希望下次发布代码,能够条理清楚一点,那就更好了

How do I train a detector using orginal batchsize……

When I use the --4 gpus, the training setting is automatically changed, i.e., iterations are changed from 90000 to 180000, as same as the smaller lr and batchsize.

If I have enough GPU memory, I can simply use the orginal training setting with larger batchsize like 16.

Details of enhacing the single point feature with region features?

Hi, pretty nice work!

I have some questions on the combination of single point features with region features in Table 1. of the paper.

For example, a B x C x H x W tensor produces another B x C x H x W x (7 * 7) with standard RoIAlign.
A direct concatenate produces a B x (C x (7*7+1)) x H x W tensor, is it right?

And different feature extraction methods like region, border, middle leads to different numbers of points.
Can you provide more details about this part?

TypeError: argument of type 'int' is not iterable

I use:
'pods_test --num-gpus 1 \
MODEL.WEIGHTS BorderDet_dcnv2_X_101_64x4d_FPN_1x.pkl'
to test the trained model you provided and get the following error:

Traceback (most recent call last):
File "/home/BorderDet/tools/test_net.py", line 207, in
args=(args,),
File "/home/BorderDet/cvpods/engine/launch.py", line 55, in launch
main_func(*args)
File "/home/BorderDet/tools/test_net.py", line 189, in main
cfg.MODEL.WEIGHTS, resume=args.resume
File "/home/BorderDet/cvpods/checkpoint/checkpoint.py", line 169, in resume_or_load
return self.load(path)
File "/home/BorderDet/cvpods/checkpoint/checkpoint.py", line 105, in load
checkpoint = self._load_file(path)
File "/home/BorderDet/cvpods/checkpoint/detection_checkpoint.py", line 47, in _load_file
if "model" in data and "author" in data:
TypeError: argument of type 'int' is not iterable

Then i go to line 47 in cvpods/checkpoint/detection_checkpoint.py and find the 'data' is not a dictionary but only a number: 119547037146038801333356

ImportError: cannot import name 'config'

When I run train_net.py ,it shows this error .Can you tell why ,thanks!
/content/drive/My Drive/BorderDet/BorderDet/tools
pods_test pods_train test_net.py train_net.py
Traceback (most recent call last):
File "train_net.py", line 38, in
from config import config
ImportError: cannot import name 'config'

compile error

python setup.py build develop
running build
running build_py
running build_ext
building 'cvpods._C' extension
Emitting ninja build file /home/ldd/BorderDet/build/temp.linux-x86_64-3.6/build.ninja...
Compiling objects...
Allowing ninja to set a default number of workers... (overridable by setting the environment variable MAX_JOBS=N)
1.7.2
g++ -pthread -shared -L/home/ldd/anaconda3/envs/pytorch1.5/lib -Wl,-rpath=/home/ldd/anaconda3/envs/pytorch1.5/lib,--no-as-needed /home/ldd/BorderDet/build/temp.linux-x86_64-3.6/home/ldd/BorderDet/cvpods/layers/csrc/vision.o /home/ldd/BorderDet/build/temp.linux-x86_64-3.6/home/ldd/BorderDet/cvpods/layers/csrc/nms_rotated/nms_rotated_cpu.o /home/ldd/BorderDet/build/temp.linux-x86_64-3.6/home/ldd/BorderDet/cvpods/layers/csrc/box_iou_rotated/box_iou_rotated_cpu.o /home/ldd/BorderDet/build/temp.linux-x86_64-3.6/home/ldd/BorderDet/cvpods/layers/csrc/ROIAlign/ROIAlign_cpu.o /home/ldd/BorderDet/build/temp.linux-x86_64-3.6/home/ldd/BorderDet/cvpods/layers/csrc/ROIAlignRotated/ROIAlignRotated_cpu.o /home/ldd/BorderDet/build/temp.linux-x86_64-3.6/home/ldd/BorderDet/cvpods/layers/csrc/sigmoid_focal_loss/SigmoidFocalLoss_cuda.o /home/ldd/BorderDet/build/temp.linux-x86_64-3.6/home/ldd/BorderDet/cvpods/layers/csrc/deformable/deform_conv_cuda.o /home/ldd/BorderDet/build/temp.linux-x86_64-3.6/home/ldd/BorderDet/cvpods/layers/csrc/deformable/deform_conv_cuda_kernel.o /home/ldd/BorderDet/build/temp.linux-x86_64-3.6/home/ldd/BorderDet/cvpods/layers/csrc/nms_rotated/nms_rotated_cuda.o /home/ldd/BorderDet/build/temp.linux-x86_64-3.6/home/ldd/BorderDet/cvpods/layers/csrc/SwapAlign2Nat/SwapAlign2Nat_cuda.o /home/ldd/BorderDet/build/temp.linux-x86_64-3.6/home/ldd/BorderDet/cvpods/layers/csrc/box_iou_rotated/box_iou_rotated_cuda.o /home/ldd/BorderDet/build/temp.linux-x86_64-3.6/home/ldd/BorderDet/cvpods/layers/csrc/ROIAlign/ROIAlign_cuda.o /home/ldd/BorderDet/build/temp.linux-x86_64-3.6/home/ldd/BorderDet/cvpods/layers/csrc/lars/adaptive_lr_cuda.o /home/ldd/BorderDet/build/temp.linux-x86_64-3.6/home/ldd/BorderDet/cvpods/layers/csrc/border_align/border_align_kernel.o /home/ldd/BorderDet/build/temp.linux-x86_64-3.6/home/ldd/BorderDet/cvpods/layers/csrc/ROIAlignRotated/ROIAlignRotated_cuda.o /home/ldd/BorderDet/build/temp.linux-x86_64-3.6/home/ldd/BorderDet/cvpods/layers/csrc/ml_nms/ml_nms.o /home/ldd/BorderDet/build/temp.linux-x86_64-3.6/home/ldd/BorderDet/cvpods/layers/csrc/cuda_version.o -L/home/ldd/anaconda3/envs/pytorch1.5/lib/python3.6/site-packages/torch/lib -L/usr/local/cuda/lib64 -L/home/ldd/anaconda3/envs/pytorch1.5/lib -lc10 -ltorch -ltorch_cpu -ltorch_python -lcudart -lc10_cuda -ltorch_cuda -lpython3.6m -o build/lib.linux-x86_64-3.6/cvpods/_C.cpython-36m-x86_64-linux-gnu.so
g++: error: /home/ldd/BorderDet/build/temp.linux-x86_64-3.6/home/ldd/BorderDet/cvpods/layers/csrc/lars/adaptive_lr_cuda.o: No such file or directory
error: command 'g++' failed with exit status 1

Could anyone help me with this problem

About visualizing feature maps

Thanks for contributing this project.
I'm studying this work and try to understand some details in feature enhancing. And recently i'm confused about where the chosen extreme point in feature maps actually. Does it choose the true extreme point as we think? I want to visualize my prediction result and the extreme point just as the Fig.4 in paper. And i haven't found relevant code in project. Could you please share the relevant code if it's ok?
Looking forward to your reply.

from cvpods import _C

from cvpods import _C
ImportError: cannot import name '_C' from 'cvpods' (BorderDet/cvpods/init.py)

您好,我没找到_C在哪?文件里面貌似没有

I wonder how you implement border align?

In border_align.py, line 21
'''
grad_input = _C.border_align_backward(
grad_output, input, boxes, wh, pool_size)
'''
Could you please tell me where the _C.border_align_backward is? I can't find it.

I have a question about this code.

Thank you for sharing this great project.
I am new to deep learning and have a question about code.

On line 67 of cvpods> modeling> meta_arch> ssd.py,

self.default_box_generator = cfg.build_default_box_generator(cfg)

Where can i find build_default_box_generator?

AssertionError: Default process group is not initialized

[10/16 15:51:32 pods.engine.trainer]: Starting training from iteration 0
ERROR [10/16 15:51:32 pods.engine.trainer]: Exception during training:
Traceback (most recent call last):
File "/media/sda6/yhh/FCOS/BorderDet/cvpods/engine/trainer.py", line 89, in train
self.run_step()
File "/media/sda6/yhh/FCOS/BorderDet/cvpods/engine/trainer.py", line 193, in run_step
loss_dict = self.model(data)
File "/home/yons/anaconda3/envs/borderdet140-yhh/lib/python3.7/site-packages/torch/nn/modules/module.py", line 532, in call
result = self.forward(*input, **kwargs)
File "/media/sda6/yhh/FCOS/BorderDet/cvpods/modeling/meta_arch/borderdet.py", line 167, in forward
bd_box_delta,
File "/media/sda6/yhh/FCOS/BorderDet/cvpods/modeling/meta_arch/borderdet.py", line 237, in losses
dist.all_reduce(num_foreground)
File "/home/yons/anaconda3/envs/borderdet140-yhh/lib/python3.7/site-packages/torch/distributed/distributed_c10d.py", line 901, in all_reduce
_check_default_pg()
File "/home/yons/anaconda3/envs/borderdet140-yhh/lib/python3.7/site-packages/torch/distributed/distributed_c10d.py", line 193, in _check_default_pg
"Default process group is not initialized"
AssertionError: Default process group is not initialized
[10/16 15:51:32 pods.engine.hooks]: Total training time: 0:00:00 (0:00:00 on hooks)

undefined symbol

After installing the requirements and building the develop, I got this error when training:
ImportError: /home/dbm/BorderDet/cvpods/_C.cpython-36m-x86_64-linux-gnu.so: undefined symbol: ZN6cvpods25ComputeAdaptiveLrOnDeviceEN2at6TensorES1_dddS1
In fact, a similar error have occurred before this, and that error was about _ZNBorderAlign* and I reinstalled the environment.
How can I solve this problem?

Can not reproduce the results.

Hello,

First, thanks for your awesome work!

Recently, I tried to train the BD_R_50_FPN_1x model on my own. However, with 8 Titan Xp cards, I only get 38.1 mAP, far from the reported result. The config was not changed.

Strangely, when I tried to train it with 4 cards and 4 images on each card, the mAP is somewhat higher, reaching 39.8, still below the reported mAP, though.

I have spent several days on this problem, so I resort to opening this issue. Is there anything I missed?

Here is my system info and logs.
log-8x2-38.1.txt
log-4x4-39.8.txt

----------------------  ---------------------------------------------------------------------------------
sys.platform            linux
Python                  3.7.10 (default, Feb 26 2021, 18:47:35) [GCC 7.3.0]
numpy                   1.20.1
cvpods                  0.1 @/home/usrnam/cvpods/cvpods
cvpods compiler         GCC 7.5
cvpods CUDA compiler    10.1
cvpods arch flags       sm_61
cvpods_ENV_MODULE       <not set>
PyTorch                 1.6.0 @/home/usrnam/.conda/envs/borderdet/lib/python3.7/site-packages/torch
PyTorch debug build     False
CUDA available          True
GPU 0,1,2,3,4,5,6,7     TITAN Xp
CUDA_HOME               /usr/local/cuda-10.1
NVCC                    Cuda compilation tools, release 10.1, V10.1.243
Pillow                  8.2.0
torchvision             0.7.0 @/home/usrnam/.conda/envs/borderdet/lib/python3.7/site-packages/torchvision
torchvision arch flags  sm_35, sm_50, sm_60, sm_70, sm_75
cv2                     4.5.1
----------------------  ---------------------------------------------------------------------------------

CUDA kernel function

Thanks for your great job! I want to transfer the border_align to rotated object detection and faced the error RuntimeError: CUDA error: an illegal memory access was encountered. After analyzing, I found it maybe due to the wrong index from the loop CUDA_1D_KERNEL_LOOP. In your code, I'm not clear about dim3 grid(std::min(THCCeilDiv((long)output_size, 64L), 4096L));. Could you please tell me why output_size divided by 64? Thanks.

cfg.build_shift_generator

请问以下,self.shift_generator = cfg.build_shift_generator(cfg, feature_shapes),这个build_shift_generator在代码的哪个地方,没看到。谢谢

How to train for custom dataset

Thanks for your great work.
I want to train BorderDet with my custom dataset (difference classes) from scratch/ transfer learning. How can I do that?
Thank you.

BorderDet in FCOS

您好,我想问以下,因为当前一些目标跟踪算法采用FCOS,所以我想在当前算法加入BAM模块,请问一下具体的代码参考哪些?谢谢

ImportError: Undefine Symbol

I follow the commands in README but when I get to train the net, following error comes out:

./cvpods/_C.cpython-37m-x86_64-linux-gnu.so: undefined symbol: ZN6cvpods25ComputeAdaptiveLrOnDeviceEN2at6TensorES1_dddS1

All environment is set as the requirements.txt said, and the GPU is alright for I could run other DL projects.

Please help to take a look at it, thanks~

example for instance segmentation.

Again, thanks for opensourcing cvpod. I wonder how to use it for instance segmentation. I have seen there are some instance segmentation code like solo and tensormask. Could you give some example config files? @FateScript @Maycbj Thanks!

release the implementation of adding BorderAlign Module to the RetinaNet?

Thanks for your excellent work and nice open-source code.

"Our BorderDet can be easily integrated with the many popular object detectors, e.g. RetinaNet and FPN.To prove the generalization of the BorderDet, we first add the proposed border alignment module to the RetinaNet. For a fair comparison, without modifying any setting of RetinaNet, we directly select the one with the highest score from the nine prediction boxes of each pixel to refine."

I tried to reproduce it as described in the paper, but the model has not converged well. so, can you please release the implementation of adding BorderAlign Module to the RetinaNet? thanks.

data dir Issues

pods_train --num-gpus 1
soft link to /data/Outputs/model_logs/cvpods_playground/detection/coco/borderdet/borderdet.res50.fpn.coco.800size.1x
ln: 无法创建符号链接'log': 文件已存在
Command Line Args: Namespace(dist_url='tcp://127.0.0.1:50152', eval_only=False, machine_rank=0, num_gpus=1, num_machines=1, opts=[], resume=False)
Traceback (most recent call last):
File "/home/p/BorderDet-master/tools/train_net.py", line 222, in
args=(args,),
File "/home/p/BorderDet-master/cvpods/engine/launch.py", line 55, in launch
main_func(*args)
File "/home/p/BorderDet-master/tools/train_net.py", line 203, in main
stage_main(args, config, build_model)
File "/home/p/BorderDet-master/tools/train_net.py", line 126, in stage_main
cfg, logger = default_setup(cfg, args)
File "/home/p/BorderDet-master/cvpods/engine/setup.py", line 76, in default_setup
PathManager.mkdirs(output_dir)
File "/home/p/BorderDet-master/cvpods/utils/file/file_io.py", line 446, in mkdirs
return PathManager.__get_path_handler(path)._mkdirs(path)
File "/home/p/BorderDet-master/cvpods/utils/file/file_io.py", line 252, in _mkdirs
os.makedirs(path, exist_ok=True)
File "/home/p/anaconda3/envs/pytorch/lib/python3.7/os.py", line 213, in makedirs
makedirs(head, exist_ok=exist_ok)
File "/home/p/anaconda3/envs/pytorch/lib/python3.7/os.py", line 213, in makedirs
makedirs(head, exist_ok=exist_ok)
File "/home/p/anaconda3/envs/pytorch/lib/python3.7/os.py", line 213, in makedirs
makedirs(head, exist_ok=exist_ok)
[Previous line repeated 4 more times]
File "/home/p/anaconda3/envs/pytorch/lib/python3.7/os.py", line 223, in makedirs
mkdir(name, mode)
PermissionError: [Errno 13] Permission denied: '/data'

Darknet pretrained model

Hi, thanks for your work, I am also interested in other detectors in cvpods, I want to know where to find "s3://generalDetection/cvpods/ImageNetPretrained/custom/darknet53.mix.pth" this darknet pretrained model.

Support of Incremental Object Detection

Hello
How are you?
Thanks for contributing this project.
I have a question.
Does this project support class-incremental training for saving training time without catastrophic forgetting?
Let's suppose I've trained a model on the dataset with K classes for 7 days.
If a new class is added into this dataset, should we train a model with the expanded dataset (K+1 classes) from begin?
If so, it is so expensive, especially in case of object detection in retail store.
That's because a new class of good is added frequently in retail store.
Can we train a new model in short time with the original weight on the expanded dataset?
I think that this is a very important function.
I send some recommended papers for this project.
https://arxiv.org/pdf/1708.06977.pdf
https://arxiv.org/pdf/2003.04668.pdf
https://arxiv.org/pdf/2003.06957.pdf
https://arxiv.org/pdf/2003.07304.pdf
Please let me know if you have a willing to implement this.
Thanks

How to supplement single point feature?

Hi there, congrats on your work!
I have a question about your experimental design.
In your paper, Section3.1, says

Then we gradually supplement the single point feature with different
features to refine the coarse predictions.

So HOW did you perform such supplementation? Really curious about the motivation behind this.

AssertionError: Default process group is not initialized

I only have a single GPU, so i use 'pods_train --num-gpus 1' to train the model. Here is the Error i'm getting:

ERROR [08/06 03:03:31 pods.engine.trainer]: Exception during training:
Traceback (most recent call last):
File "/home/BorderDet/cvpods/engine/trainer.py", line 90, in train
self.run_step()
File "/home/BorderDet/cvpods/engine/trainer.py", line 194, in run_step
loss_dict = self.model(data)
File "/home/sdb/anaconda2/envs/mmdet/lib/python3.6/site-packages/torch/nn/modules/module.py", line 550, in call
result = self.forward(*input, **kwargs)
File "/home/BorderDet/cvpods/modeling/meta_arch/borderdet.py", line 167, in forward
bd_box_delta,
File "/home/BorderDet/cvpods/modeling/meta_arch/borderdet.py", line 234, in losses
dist.all_reduce(num_foreground)
File "/home/sdb/anaconda2/envs/mmdet/lib/python3.6/site-packages/torch/distributed/distributed_c10d.py", line 897, in all_reduce
_check_default_pg()
File "/home/sdb/anaconda2/envs/mmdet/lib/python3.6/site-packages/torch/distributed/distributed_c10d.py", line 187, in _check_default_pg
"Default process group is not initialized"
AssertionError: Default process group is not initialized
[08/06 03:03:31 pods.engine.hooks]: Total training time: 0:00:00 (0:00:00 on hooks)

Compilation issues

(python) fsr@serverA2:~/BorderDet/playground/detection/coco/borderdet/borderdet.res50.fpn.coco.800size.1x$ OUTPUT_DIR /path/to/your/save_dir
OUTPUT_DIR:未找到命令

> 1. They are the same.

  1. They are the same.
  2. sec_reg_conv has the same dimensions in training and inference. The feature dimensions are both [N, H_W_9, 256] during training and during testing.
  3. They are two hyper-parameters of box_coder, we have not made ablation experiments for these ablation studies. And I suggest you can make ablation experiments for them.

Thank you very much but I'm a bit confused about question 2.

if the dimension of sec_reg_conv is [N, HW9, 256], how to reshape it to (N, -1, int(H * W))?
sec_bbox_reg = self.sec_bbox_pred(sec_reg_conv.reshape(N, -1, int(H * W)))
Firstly, sec_reg_conv is the align_conv returned in function forward of BorderBranch, the dimension of align_conv is reshaped to [N, A*C, H, W].
align_conv = align_conv.reshape(N, C, H, W, A).permute(0, 4, 1, 2, 3).reshape(N, -1, H, W)
Secondly, A=1 for training and A=9 for inference, because of the anchors_per_fm randomly takes a value in the A dimension in the training stage.
anchors_per_fm = anchors_per_fm[range(num_box), rand_index]
This is my understanding and I'm looking forward to your corrections.

Originally posted by @lingyunwu14 in #15 (comment)

code issue

hi,
I have a problem in your code.
Could you give me some advise.
-- Process 1 terminated with the following error:
Traceback (most recent call last):
File "/home/chrisd/.pyenv/versions/anaconda3-4.3.1/envs/FCOS/lib/python3.7/site-packages/torch/multiprocessing/spawn.py", line 19, in _wrap
fn(i, *args)
File "/home/chrisd/桌面/代码/cvpods/cvpods/engine/launch.py", line 88, in _distributed_worker
main_func(*args)
File "/home/chrisd/桌面/代码/cvpods/tools/train_net.py", line 95, in main
runner.train()
File "/home/chrisd/桌面/代码/cvpods/cvpods/engine/runner.py", line 270, in train
super().train(self.start_iter, self.start_epoch, self.max_iter)
File "/home/chrisd/桌面/代码/cvpods/cvpods/engine/base_runner.py", line 84, in train
self.run_step()
File "/home/chrisd/桌面/代码/cvpods/cvpods/engine/base_runner.py", line 185, in run_step
loss_dict = self.model(data)
File "/home/chrisd/.pyenv/versions/anaconda3-4.3.1/envs/FCOS/lib/python3.7/site-packages/torch/nn/modules/module.py", line 532, in call
result = self.forward(*input, **kwargs)
File "/home/chrisd/.pyenv/versions/anaconda3-4.3.1/envs/FCOS/lib/python3.7/site-packages/torch/nn/parallel/distributed.py", line 447, in forward
output = self.module(*inputs[0], **kwargs[0])
File "/home/chrisd/.pyenv/versions/anaconda3-4.3.1/envs/FCOS/lib/python3.7/site-packages/torch/nn/modules/module.py", line 532, in call
result = self.forward(*input, **kwargs)
File "/home/chrisd/桌面/代码/BorderDet/playground/detection/coco/borderdet/borderdet.res50.fpn.coco.800size.1x/borderdet.py", line 147, in forward
) = self.head(features, shifts)
File "/home/chrisd/.pyenv/versions/anaconda3-4.3.1/envs/FCOS/lib/python3.7/site-packages/torch/nn/modules/module.py", line 532, in call
result = self.forward(*input, **kwargs)
File "/home/chrisd/桌面/代码/BorderDet/playground/detection/coco/borderdet/borderdet.res50.fpn.coco.800size.1x/borderdet.py", line 734, in forward
border_cls_conv = self.border_cls_subnet(cls_subnet, align_boxes, wh)
File "/home/chrisd/.pyenv/versions/anaconda3-4.3.1/envs/FCOS/lib/python3.7/site-packages/torch/nn/modules/module.py", line 532, in call
result = self.forward(*input, **kwargs)
File "/home/chrisd/桌面/代码/BorderDet/playground/detection/coco/borderdet/borderdet.res50.fpn.coco.800size.1x/borderdet.py", line 809, in forward
ltrb_conv = self.border_align(feature, boxes)
File "/home/chrisd/.pyenv/versions/anaconda3-4.3.1/envs/FCOS/lib/python3.7/site-packages/torch/nn/modules/module.py", line 532, in call
result = self.forward(*input, **kwargs)
File "/home/chrisd/桌面/代码/cvpods/cvpods/layers/border_align.py", line 42, in forward
output = border_align(feature, boxes, wh, self.pool_size)
File "/home/chrisd/桌面/代码/cvpods/cvpods/layers/border_align.py", line 15, in forward
output = _C.border_align_forward(input, boxes, wh, pool_size)
RuntimeError: cuda runtime error (98) : invalid device function at /home/chrisd/桌面/代码/cvpods/cvpods/layers/csrc/border_align/border_align_kernel.cu:202

How do you realize border feature extracting in Table 1?

In the paper Table 1, you used border features in the second prediction. I'm curious about how you realize it?
It's easy to understand that ROI Align is used to extract region features as Mask rcnn, but how do you use the border features to predict the box?
Do you fill-up the border-box with zero, or reshape it to a vector and use FC layer to predict the result?

边界点的正负样本定义

您好,我想请问一下边界上的正负样本定义是根据预测得到的粗略的边框与真实边框的IOU来确定的吗?这部分代码不是很懂,希望能解答一下,谢谢

I got stuck training on my datasets

It won't go on, I just have 2gpus, use the command: pods_train --num-gpus 2
,please take a look and tell me what is wrong. Thank you very much.

head.cls_subnet.4.{bias, weight}
head.cls_subnet.6.{bias, weight}
head.cls_subnet.7.{bias, weight}
head.cls_subnet.9.{bias, weight}
head.scales.0.scale
head.scales.1.scale
head.scales.2.scale
head.scales.3.scale
head.scales.4.scale
[09/29 16:11:49 pods.checkpoint.model_loading]: The checkpoint contains parameters not used by the model:
fc1000_b
fc1000_w
conv1_b
[09/29 16:11:49 pods.engine.trainer]: Starting training from iteration 0
[09/29 16:11:55 pods.utils.dump.events]: eta: 1 day, 4:22:50 iter: 20/360000 total_loss: 5.058 loss_cls: 1.171 loss_box_reg: 1.000 loss_centerness: 0.679 loss_border_cls: 2.202 loss_border_reg: 0.000 time: 0.2838 data_time: 0.0023 lr: 0.000050 max_mem: 3971M
[09/29 16:12:01 pods.utils.dump.events]: eta: 1 day, 4:25:07 iter: 40/360000 total_loss: 4.962 loss_cls: 1.094 loss_box_reg: 1.000 loss_centerness: 0.678 loss_border_cls: 2.172 loss_border_reg: 0.000 time: 0.2848 data_time: 0.0023 lr: 0.000100 max_mem: 3971M

AssertionError: Requires PyTorch >= 1.3

(python) fsr@serverA2:~/BorderDet$ python setup.py build develop
Traceback (most recent call last):
File "setup.py", line 14, in
assert torch_ver >= [1, 3], "Requires PyTorch >= 1.3"
AssertionError: Requires PyTorch >= 1.3

print(torch.version)
1.7.0
my pytorch>=1.3, why it has error?

Border Feature Extraction

Hi there,
sorry but I couldn't find the code that is related to the border feature extraction and feature align.
I wonder where can I get them

undefined symbol:

Traceback (most recent call last):
File "/home/chen/code/BorderDet/tools/train_net.py", line 26, in
from cvpods.checkpoint import DetectionCheckpointer
File "/home/chen/code/BorderDet/cvpods/init.py", line 3, in
from .utils import setup_environment
File "/home/chen/code/BorderDet/cvpods/utils/init.py", line 11, in
from .visualizer import colormap, random_color, VideoVisualizer, ColorMode, VisImage, Visualizer
File "/home/chen/code/BorderDet/cvpods/utils/visualizer/init.py", line 5, in
from .video_visualizer import *
File "/home/chen/code/BorderDet/cvpods/utils/visualizer/video_visualizer.py", line 6, in
from .visualizer import ColorMode, Visualizer, _create_text_labels, _PanopticPrediction
File "/home/chen/code/BorderDet/cvpods/utils/visualizer/visualizer.py", line 15, in
from cvpods.structures import BitMasks, Boxes, BoxMode, Keypoints, PolygonMasks, RotatedBoxes
File "/home/chen/code/BorderDet/cvpods/structures/init.py", line 2, in
from .boxes import Boxes, BoxMode, pairwise_iou, pairwise_ioa
File "/home/chen/code/BorderDet/cvpods/structures/boxes.py", line 8, in
from cvpods.layers import cat
File "/home/chen/code/BorderDet/cvpods/layers/init.py", line 3, in
from .deform_conv import DeformConv, ModulatedDeformConv
File "/home/chen/code/BorderDet/cvpods/layers/deform_conv.py", line 10, in
from cvpods import _C
ImportError: /home/chen/code/BorderDet/cvpods/_C.cpython-37m-x86_64-linux-gnu.so: undefined symbol: _ZN6cvpods25border_align_cuda_forwardERKN2at6TensorES3_S3_i

Where did δ and π implemented in code?

Hi, thank you for your fantastic work. Could you please point out the location of the δ and π that in your paper mentioned?

"The π indicates multiplication and the δ denotes the combination of the two bounding box locations "

thank you very much

Tutorials for cvpods

I can't find any docs or tutorials for cvpods, and I wondered if all the usage of cvpods is same as detectron2. If not, could you release the documents of cvpods?

Tutorials for cvpods

I can't find any docs or tutorials for cvpods, and I wondered if all the usage of cvpods is same as detectron2. If not, could you release the documents of cvpods?

Loss NAN

When I train the border det in floder borderdet.dcnv2.x101.32x8d.fpn.coco.800size.2x. The loss become NAN after 100 660 iteration. How to fix it ?

when I run code python setup.py build develop,there is a question occur.

when I run code python setup.py build develop,there is a question occur.
the main error information on below:

LINK : fatal error LNK1181: 无法打开输入文件“E:\cslg\drone_object_detection\BorderDet-master\build\temp.win-amd64-3.7\Release\cslg\drone_object_detection\BorderDet-master\cvpods\layers\csrc\vision.obj”
error: command 'D:\softinstall\VS2015\VC\BIN\x86_amd64\link.exe' failed with exit status 1181

I don't know how to resolve this problem,Can you help me ?

About Visualization

Thanks for your excellent work.
How to visualize the fig4 in paper?
Can you release the relevant code? Thanks.

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.