小编H.M*_*ter的帖子

matlab:??? "double"类型的输入参数的未定义函数或方法

谁能解释为什么我的代码中出现以下错误?它涉及将双打传递给Z,但我没有看到参数a和b是如何加倍的.

clear all;
im = imread('smallblob.png');
im = im(:,:,1);
w = size(im,1);
h = size(im,2);
[dx,dy] = gradient(double(im));
lambda = 1;
Ox = -1.^lambda.*(-dx);
Oy = -1.^lambda.*(dy);
magO = sqrt(Ox.^2 + Oy.^2);

Ix = dx;
Iy = dy;
magI = sqrt(Ix.^2 + Iy.^2);

N=w+1;
yp(1:N)=-0.5*w:1:0.5*w;
xp(1:N)=-0.5*h:1:0.5*h;
Y(1:w,1:h)=0;
X(1:w,1:h)=0;
for i=1:w
    Y(i,:)=yp(i);
end
for i=1:h
    X(:,i)=xp(i);
end


for a=1:h
    for b=1:w
        for i=1:N-1
            Rx(i)=-0.5*(Ix(i)+Ix(i+1));
            Ry(i)=-0.5*(Iy(i)+Iy(i+1));
            Rz(i)=Z(a,b);                   %HERE IS THE ERROR
            dlx(i)=Ix(i+1)-Ix(i);
            dly(i)=Iy(i+1)-Iy(i);
        end
        Rx(N)=-0.5*(Ix(N)+Ix(1));
        Ry(N)=-0.5*(Iy(N)+Iy(1));
        Rz(N)=Z(a,b);
        dlx(N)=-Ix(N)+Ix(1);
        dly(N)=-Ix(N)+Ix(1);

        for i=1:N
            Xcross(i)=dly(i).*Rz(i); …
Run Code Online (Sandbox Code Playgroud)

matlab

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

使用2个编译器编译fortran程序

我正在尝试运行一个在fortran编写的程序,其中子程序已经用gfortran编译,主程序已经用ifort编译:

这里的源代码:

子程序:

subroutine testsub
    implicit none
    integer icarte
    read(10,*) icarte
    write(*,*)icarte 
    return 
    end`
Run Code Online (Sandbox Code Playgroud)

主要代码:

program test
    implicit none
    integer i
    open (unit=10, file="file_test")
    do i=1,6
       read(10,*)
    enddo
    call testsub
    close(10)
    end
Run Code Online (Sandbox Code Playgroud)

并且读取的文件是:

1
2
3
4
5
6
7 5 6 8
23
Run Code Online (Sandbox Code Playgroud)

然后我这样编译:

gfortran -c testsub.f

ar rcs libtest.a testsub.o

ifort -o testexe test.f -L./ -ltest -L/.../gcc/4.7.1/lib64 -lgfortran
Run Code Online (Sandbox Code Playgroud)

我获得了:

At line 4 of file testsub.f (unit = 10, file = 'fort.10')
Fortran runtime error: End of file
Run Code Online (Sandbox Code Playgroud)

看起来逻辑单元没有给出子程序.我应该在某个地方添加一个编译选项...但我真的不知道在哪里和哪里......并回答这个问题"如果我使用相同的编译器编译两个文件会发生什么?" …

compiler-construction fortran

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

在python中为棋盘游戏创建2D网格

我正在使用Python进行计算机科学的入门课程,我们进行了练习制作棋盘游戏(dogems).我在构建电路板时遇到了麻烦.该程序假设采用一个给定的参数,并使用函数make_board(size)构造一个相等行和列的板,其底部带数字,侧面带字母.然后函数show_board(board)显示它.例如,板尺寸:4将给出:

a . . .
b . . .
c . . .
. 1 2 3
Run Code Online (Sandbox Code Playgroud)

然而,一块板尺寸:5会给出:

a . . . .
b . . . .
c . . . .
d . . . .
. 1 2 3 4
Run Code Online (Sandbox Code Playgroud)

我的问题基本上是,如何编写这些函数来构建这种性质的电路板?

python grid

0
推荐指数
1
解决办法
6048
查看次数

在android中使用通用图像加载器进行缩放后模糊的imageview

我想在水平viewpager中显示一组图像.我使用了Universal Image Loader一切都很好.但是在缩放之后,即使对于大图像,图像的质量也会丢失.

图像尺寸为1000*1000

我已配置以下设置

Options options = new DisplayImageOptions.Builder()
        .showImageForEmptyUri(R.drawable.ic_launcher)
        .cacheOnDisc()
        .cacheInMemory()
        .imageScaleType(ImageScaleType.POWER_OF_2)
        .build();

config = new ImageLoaderConfiguration.Builder(ctx)
        .defaultDisplayImageOptions(options)
        .build();
ImageLoader.getInstance().init(config);
Run Code Online (Sandbox Code Playgroud)

android image-processing universal-image-loader

0
推荐指数
1
解决办法
4220
查看次数