小编Zet*_*and的帖子

如何在OpenCV(Java)中使用HoughLines检测行?

我目前正在尝试检测是否已使用HoughLinesin在图像上部署了平交道口屏障OpenCV.我以为我的代码会在我的图像上画一条线,只要屏障出现在其中 - 但我得到一条错误消息"Mat数据类型不兼容".可以告诉我如何使用OpenCV检测Java中的行吗?

public class DetectLines {

public static void main(String args[]) {

    System.loadLibrary(Core.NATIVE_LIBRARY_NAME);

    Mat eventless = Highgui.imread("files/eventless.png");
    Mat barrier = Highgui.imread("files/barrier/lc-00201.png");
    Mat difference = new Mat();
    Mat lines = new Mat();

    Core.absdiff(eventless, barrier, difference);

    Mat grey = new Mat();
    Imgproc.cvtColor(difference, grey, Imgproc.COLOR_BGR2GRAY);

    Imgproc.HoughLines(grey, lines, 5.0, 4.0, 7);

    Imshow ims1 = new Imshow("Lines");
    ims1.showImage(lines);

}

}
Run Code Online (Sandbox Code Playgroud)

java opencv

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

线程"main"中的异常java.lang.UnsatisfiedLinkError:java.library.path中没有opencv_java249

我正在尝试在我的32位笔记本电脑上设置OpenCV,但我一直收到一条令我困惑的错误信息:

Exception in thread "main" java.lang.UnsatisfiedLinkError: no opencv_java249 in java.library.path
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at hello.main(hello.java:8)
Run Code Online (Sandbox Code Playgroud)

我尝试过切换一些东西,比如进入用户库并将原生库位置更改为\ x64而不是\ x86,但这没有用.我还确保我的Java项目将OpenCV-2.4.9作为其库之一.我也试过'清理'所有项目,但这没有用(它曾经有过吗?).所以我已经按照设置教程中的所有说明进行操作,但它仍然无效.

有谁知道问题可能在这里?提前致谢...

java java-native-interface opencv java.library.path

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

查找两个像素之间距离的最简单方法是什么?

这可能是一个有点笨拙的问题-但我想找到两个坐标为(x1,y1)和(x2,y2)的像素之间的距离。用MatLab做到这一点的最简单方法是什么?

matlab image-processing

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

当我尝试将字符串添加到ArrayList时,为什么我的类会导致'NullPointerException'?

import java.util.ArrayList;

public class FriendList {

    private ArrayList<String> friendList;

    public FriendList() {
        ArrayList<String> friendList = new ArrayList<String>();
    }

    public void addFriend(String friend) {
        friendList.add(friend);
    }

    public String getFriends() {
        return friendList.toString();
    }
}
Run Code Online (Sandbox Code Playgroud)

我尝试过一些东西,但似乎无法设法将字符串添加到数组列表中.任何想法为什么会这样?

java arraylist

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

为什么我的卡片组生成代码返回一个空数组?

这是代码.当我运行它时,lengthnewDeck是0,那么很显然,没有Cards被添加到它...

function Card(number, suit) {
    this.number = number;
    this.suit = suit;
}

var deck = [];

function Deck() {
    for (i=2; i>13; i++) {
        for (j=1; j>4; j++) {
            var newCard = new Card(i,j);
            deck.push(newCard);
        }
    }
    return deck
}

var newDeck = new Deck();
console.log(newDeck.length);
Run Code Online (Sandbox Code Playgroud)

javascript

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