小编obe*_*lix的帖子

在MxNet-Gluon中使用带有预训练ResNet34模型的ROIPooling层

假设我在MXNet中有一个Resnet34预备模型,我想在其中添加API中包含的预制ROIPooling层:

https://mxnet.incubator.apache.org/api/python/ndarray/ndarray.html#mxnet.ndarray.ROIPooling

如果初始化Resnet的代码如下,如何在分类器之前的Resnet功能的最后一层添加ROIPooling?

实际上,我如何在我的模型中一般使用ROIPooling功能?

如何在ROIpooling层中合并多个不同的ROI?它们应该如何存储?如何更改数据迭代器以便为ROIPooling函数提供所需的批处理索引?

让我们假设我将此与VOC 2012数据集一起用于行动识别任务

batch_size = 40
num_classes = 11
init_lr = 0.001
step_epochs = [2]

train_iter, val_iter, num_samples = get_iterators(batch_size,num_classes)
resnet34 = vision.resnet34_v2(pretrained=True, ctx=ctx)

net = vision.resnet34_v2(classes=num_classes)

class ROIPOOLING(gluon.HybridBlock):
    def __init__(self):
        super(ROIPOOLING, self).__init__()

    def hybrid_forward(self, F, x):
        #print(x)
        a = mx.nd.array([[0, 0, 0, 7, 7]]).tile((40,1))
        return F.ROIPooling(x, a, (2,2), 1.0)

net_cl = nn.HybridSequential(prefix='resnetv20')
with net_cl.name_scope():
    for l in xrange(4):
        net_cl.add(resnet34.classifier._children[l])
    net_cl.add(nn.Dense(num_classes,  in_units=resnet34.classifier._children[-1]._in_units))

net.classifier = net_cl
net.classifier[-1].collect_params().initialize(mx.init.Xavier(rnd_type='gaussian', factor_type="in", magnitude=2), ctx=ctx)

net.features = resnet34.features
net.features._children.append(ROIPOOLING())

net.collect_params().reset_ctx(ctx)
Run Code Online (Sandbox Code Playgroud)

python deep-learning resnet mxnet

9
推荐指数
1
解决办法
511
查看次数

通过g ++编译在Ubuntu 16.04中使用MATLAB Engine的c ++代码

我想询问有关如何编译在Ubuntu 16.04到g ++中使用MATLAB Engine的c ++代码的分析说明.

出于回答的目的,假设您使用默认matlab安装提供的示例代码之一来实现此目的.

在回答时请考虑我是linux,g ++和gcc编译工具的初学者.

c++ gcc g++ matlab-engine

8
推荐指数
1
解决办法
619
查看次数

使用std :: ofstream在c ++中格式化float变量输出

我有以下代码:

std::ofstream myfile;
std::stringstream filename3;
myfile.open("results.txt");

myfile << "precision= " << precision << "\n";
Run Code Online (Sandbox Code Playgroud)

我文件中的输出格式如下:

precision= 5.96e-07...
Run Code Online (Sandbox Code Playgroud)

如何将数值打印为数字而不是使用e表示的数值?

c++ format floating-point ofstream

6
推荐指数
1
解决办法
8778
查看次数

OpenCV - Python:如何在网格中分割图像?

我想将图像分割成N*N个正方形,这样我就可以分别处理这些正方形.我如何使用opencv在python中执行上述操作?

python opencv image-processing python-2.7

5
推荐指数
1
解决办法
6199
查看次数

边缘检测方法优于Canny边缘检测

是否有一种边缘检测方法比Canny边缘检测器的性能要好得多

image-processing computer-vision edge-detection

4
推荐指数
3
解决办法
1万
查看次数

最流行的JPA实现

我是一名初级程序员,并被要求开发一个应该使用Java Persistence API(JPA)的应用程序.

哪个是最受欢迎的JPA实现(Hibernate,Toplink,EclipseLink)

我可以在Apache Tomcat中使用上述任何一个,还是每个实现都绑定到特定的服务器应用程序?

这个主题有没有很好的入门书籍或教程?

persistence hibernate jpa toplink eclipselink

3
推荐指数
2
解决办法
2952
查看次数

MXNet 与其他深度学习 API 相比的优缺点

最近决定学习MXNet,因为我需要用到的一些代码,就是用这个API写的。

但是,我想知道 MXNet 与其他深度学习库相比有哪些优点和缺点。

deep-learning caffe tensorflow mxnet pytorch

3
推荐指数
1
解决办法
3125
查看次数

产生随机分叶肺结节轮廓的想法

我需要生成随机分叶轮廓,如下所示在此输入图像描述

有关如何做到这一点的任何想法或算法?我将使用的软件是matlab,但是如果你用其他语言发布解决方案我也没问题...

ps我只需要绘制一个类似于上面的随机轮廓......

matlab geometry shape shapes computational-geometry

2
推荐指数
1
解决办法
360
查看次数

将特定的Matlab脚本转换为Python

我需要使用numpy和scipy将以下Matlab脚本转换为Python.

此脚本计算称为LPQ(局部相位定量器)的功能,该功能通常用于面部识别.

记录LPQ特征提取的文件可以在这里找到:http : //www.ee.oulu.fi/mvg/files/pdf/ICISP08.pdf 2

该脚本的Matlab版本如下:

function LPQdesc = lpq(img,winSize,mode)

%% Defaul parameters
% Local window size
if nargin<2 || isempty(winSize)
    winSize=3; % default window size 3
end

rho=0.90; % Use correlation coefficient rho=0.9 as default

% Local frequency estimation (Frequency points used [alpha,0], [0,alpha], [alpha,alpha], and [alpha,-alpha]) 
if nargin<4 || isempty(freqestim)
    freqestim=1; %use Short-Term Fourier Transform (STFT) with uniform window by default
end
STFTalpha=1/winSize;  % alpha in STFT approaches (for Gaussian derivative alpha=1) 
sigmaS=(winSize-1)/4; % …
Run Code Online (Sandbox Code Playgroud)

matlab numpy image-processing scipy python-2.7

-5
推荐指数
1
解决办法
1018
查看次数