gpt4 book ai didi

java - 使用 OpenCV Java Bindings 读取图像

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:39:50 25 4
gpt4 key购买 nike

我正在使用新的 OpenCV Java bindings读取图像并对图像进行一些处理。我正在尝试使用 Java 绑定(bind)将 C 代码转换为 Java,但似乎找不到相关方法:

C 代码:

cv::Mat img = cv::imread(argv[1]);
cv::Mat gray;
cv::cvtColor(img, gray, CV_BGR2GRAY);
int erosion_size = 5;
cv::Mat element = cv::getStructuringElement(cv::MORPH_CROSS,
cv::Size(2 * erosion_size + 1, 2 * erosion_size + 1),
cv::Point(erosion_size, erosion_size) );
cv::erode(gray, gray, element);

我找不到:

  • imread
  • cvtcolor
  • getStructuringElement
  • 侵 eclipse

我在这里查看了 api:http://docs.opencv.org/java/

不幸的是sample java code provided甚至没有展示如何阅读图像!

最佳答案

使用 OpenCV for Java 读取图像:

OpenCV 2.x ( JavaDoc )

Mat img = Highgui.imread("path/to/img");

OpenCV 3.x ( JavaDoc )

Mat img = Imgcodecs.imread("path/to/img");

在这两个版本中,您都可以传递第二个参数来指定如何加载图像:

  • CV_LOAD_IMAGE_ANYDEPTH:当输入具有相应的深度时,返回 16 位/32 位图像,否则将其转换为 8 位。
  • CV_LOAD_IMAGE_COLOR:始终将图像转换为彩色图像。
  • CV_LOAD_IMAGE_GRAYSCALE:始终将图像转换为灰度图像。

例子:

// OpenCV 2.x   
Mat img = Highgui.imread("path/to/img", Highgui.CV_LOAD_IMAGE_GRAYSCALE);
// OpenCV 3.x
Mat img = Imgcodecs.imread("path/to/img", Imgcodecs.CV_LOAD_IMAGE_GRAYSCALE);

关于java - 使用 OpenCV Java Bindings 读取图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15719977/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com