问题标签 [javacpp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
181 浏览

javacpp - 标准::地图JavaCPP的转换

我是 JavaCPP 的新手,现在我遇到了问题。

我的TestLibrary.h:

测试库.java

什么时候

javac -cp javacpp.jar TestLibrary.java
java -jar javacpp.jar TestLibrary

jniTestLibrary.cpp:2238:30:错误:在没有对象参数的情况下调用非静态成员函数 rptr = &::TestClass::getMap(ptr0);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

上面的代码是根据 NativeLibrary 示例修改的。但是如何解决编译问题?我可以这样使用m.get("a")吗?

0 投票
1 回答
554 浏览

java - java.lang.UnsatisfiedLinkError: org.bytedeco.javacpp.avutil in start FFmpegFrameGrabber

i have creating slowmotion video app in android and i can try to set video motion speed in any start and ending postion in total video length.

but some error occur in start FFmpegFrameGrabber.

here my code:

view my error.

please tell me how to solve error.

0 投票
2 回答
446 浏览

android - Android 中 OpenCV 的 JavaCpp 预设。示例抛出 UnsatisfiedLinkError

我正在尝试运行 bytedeco 的 Android 示例,但我不断得到一个

org.bytedeco.javacv.android.recognize.example E/art: dlopen("/data/app/org.bytedeco.javacv.android.recognize.example-2/lib/arm/libjniopencv_core.so", RTLD_LAZY) failed: dlopen failed: cannot locate symbol "_ZN2cv8internal18WriteStructContextD1Ev" referenced by "libniopencv_core.so"...

这发生在这一行

opencv_face.FaceRecognizer faceRecognizer = createEigenFaceRecognizer();OpenCvRecognizeActivity课堂上

我尝试使用的任何其他 OpenCV 相关类都出现错误opencv_core

我没有更改示例应用程序中的依赖项。它们看起来像这样:

我错过了什么吗?应用程序的设置是否需要一些先前的步骤?

谢谢

0 投票
0 回答
187 浏览

java - javacpp中的引用指针转换

我正在尝试使用 javacpp 将头文件中的以下函数映射到 java:

这将生成以下 java 代码:

有什么指导可以让我infoMap正确映射引用指针吗?

谢谢!

0 投票
1 回答
52 浏览

java - 如何在 javacpp 链接中指定共享对象版本?

我有一个类似的库文件,libfoo.so.1.55.0并希望使用javacpp-presset将其包含在生成的平台 jar 中。将库添加到注释中的linkorlinkResources字段的正确方法是什么?@Platform

我试过了foo,还是foo@.1.55.0不行。值得注意的是,完全从共享对象文件中删除版本 ( libfoo.so) 确实可以按预期工作。

0 投票
1 回答
742 浏览

android - 从 org.bytedeco.javacv.Frame 获取原始数据

我想从javacvFrame 获取原始数据。

我正在使用FFmpegFrmaeFilter旋转 Android 相机预览。因此,我将 Frame 从 中提取出来FFmpegFrameFilter,然后提供转换byte[]MediaCodec.

但是,这样做时,我得到了错误的数据(绿色图片)。我正在从Frame.Image[0].array();

有没有其他方法可以从 Frame 获取原始数据,我可以提供给Mediacodec.

0 投票
1 回答
977 浏览

java - JavaCV FFmpegFrameRecorder 将图像保存到视频

我对 JavaCV FFmpegFrameRecorder 的使用有点困惑。我有几个 byte[] 或 short[] 数组(取决于我的图像是 8 位还是 16 位)是否有与多个图像相关的数据。现在,我的想法是使用 JavaCPP 将每个图像发送到 ffmpeg,以便它以我希望的帧速率从这个集合中创建一个静音视频。到目前为止,我有:

但我收到了类似的错误

Java 运行时环境检测到一个致命错误:

EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000007fefe4511d3, pid=6432, tid=0x000000000000027c

那里有什么问题?我应该如何选择比特率?我的图像最多为 16 位 1 通道 2048*2048 像素。

谢谢!

0 投票
1 回答
140 浏览

java - 如何将此项目作为 jar 文件运行?

你能从这个项目中创建一个没有初始化错误的 jar 文件吗?

项目在这里。 https://github.com/piersy/BasicTesseractExample

我尝试使用 jarsplice 将项目 jar 与 tesseract & javacpp jar 拼接起来,在命令提示符下运行 jar 时出现此初始化程序错误。我不知道是否需要 jarsplice,但这是我的努力。

0 投票
0 回答
342 浏览

java - Tesseract 错误空间识别(JavaCPP-Presets)

0 投票
0 回答
238 浏览

java - 在 JNI 上下文中使用 org.bytedeco.javacpp 对象

我目前正在编写一个 JNI 加速器库来替换某些系统(Linux x64 和 macOS)上的 Java 方法。

我有一个用JavaCV 3.4.2用 Kotlin/Java 编写的工作代码

我创建了一个 JNI 库,它执行相同的工作以避免 JVM 和 JNI 之间的多次来回。

例子:

Kotlin 端(JVM + JavaCV)没有加速:

JNI加速器部分:

科特林

C++

在我的 C++ 方法结束时,我被困在将本机cv::Mat转换为其 Java 对应项opencv_core.Mat(不存在具有本机地址的构造函数)。

我查看了 javacpp 生成的源代码,似乎本机对象被视为jlong. 我以这种方式进行的所有测试都会导致崩溃。

有人知道如何org.bytedeco.javacpp使用自制的 JNI 库来回传递对象吗?

编辑:

我找到了一个部分解决方法来创建opencv_mat.Matcv::Mat

将在 Java 端将返回值声明为 时Mat返回给 Java 。jlongopencv.Mat

相同类型的代码似乎不适用于 Rect(我使用了构造函数 Rect(x, y, w, h) 代替)。