标签: opencv4android

去除opencv中的背景使文字更清晰

我正在尝试创建一个可以从图像中读取文本的应用程序。但是我在清除背景时遇到了问题。我想要这样的结果:

输入图像 1 : 在此处输入图片说明

输出图像 1 : 在此处输入图片说明

这是我试过的代码:

cvtColor(org, tmp, CV_BGR2GRAY); 
normalize(tmp, tmp, 0, 255, NORM_MINMAX); 
threshold(tmp, dst, 0, 255, CV_THRESH_OTSU);
Run Code Online (Sandbox Code Playgroud)

opencv image-processing opencv4android

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

使用OpenCv contrib模块的android

有没有办法在android中使用opencv contrib模块?我特意使用文本模块.这些模块有没有android lib.我的代码在桌面上工作,我试图将我的代码迁移到android.任何见解都是gr8.

opencv android-ndk opencv4android

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

找不到OpenCV库包

我一直在尝试运行由OpenCV提供的Android的"OCV 15 Puzzle"示例应用程序,但它不起作用; 每次我尝试运行应用程序时都会显示一条消息:"找不到包,找不到OpenCV库包!尝试安装它?是/否".我按下"是",然后我收到一条新消息提示:"OpenCV Manager,软件包安装失败!".

我从Google Play安装了OpenCV管理器,所以理论上我应该能够运行示例应用程序.我也一直在寻找解决方案,到目前为止我已经取得了成功.我正在使用三星Galaxy mini S3来运行该应用程序.(Android Ver.4.1.2).

任何帮助非常感谢大家!

android opencv computer-vision opencv4android

6
推荐指数
2
解决办法
8156
查看次数

在Android应用程序中,OpenCV在短时间内崩溃

我有一个应用程序执行一些图像拼接并使用OpenCV.它曾经工作,但突然间它(随机?)一直崩溃.我不知道为什么会发生这种情况,我没有更改代码,但也没有尝试过几周的功能.在我的Nvidia Shield上可能还有Android更新.

它曾经与OpenCV 2.4.10一起使用,但由于它不再适用于该版本,我试图切换到显示相同行为的OpenCV 3.0.0.

我的设置:

  • Nvidia Shield搭载Android 5.1.1
  • 安装OpenCV_3.0.0_manager_3.00_armeabi-v7a.apk经理
  • 构建目标是Android 5.1.1
  • 将Android SDK集成到我的Android项目中的OpenCV 3.0库.在SDK内部,这是库的路径:%path-to-sdk%/OpenCV3-android-sdk/sdk/java

我的应用程序行为如下:它似乎成功加载和初始化OpenCV,甚至开始捕获和拼接一些图像.三四张图像后,它会崩溃.以下是崩溃期间记录的Android日志:

02-01 13:07:55.172: I/AudioFlinger(209): AUDIO_OUTPUT_FLAG_FAST accepted: frameCount=11258 mFrameCount=512
02-01 13:07:55.321: E/Camera2-ZslProcessor3(209): pushToReprocess: Could not find good candidate for ZSL reprocessing
02-01 13:07:55.582: E/Error(209): configureSensor: cannot find a sensor mode for 2592x1944
02-01 13:07:56.391: W/Camera2-ZslProcessor3(209): getCandidateTimestampLocked: ZSL queue has no metadata frames
02-01 13:07:56.391: E/Camera2-ZslProcessor3(209): pushToReprocess: Could not find good candidate for ZSL reprocessing
02-01 13:07:56.653: E/Error(209): configureSensor: cannot find a sensor mode …
Run Code Online (Sandbox Code Playgroud)

android opencv tegra opencv3.0 opencv4android

6
推荐指数
0
解决办法
874
查看次数

OpenGL ES 2不适用于Android API23

在我的应用程序中,我正在做一些图像像素操作.我的代码基于这个例子.

我所做的唯一改变是将其更改FRAGMENT_SHADER为灰度,它看起来像这样:

private static final String FRAGMENT_SHADER =
        "#extension GL_OES_EGL_image_external : require\n" +
        "precision mediump float;\n" +      // highp here doesn't seem to matter
        "varying vec2 vTextureCoord;\n" +
        "uniform samplerExternalOES sTexture;\n" +
        "void main() {\n" +
        "    vec4 tc = texture2D(sTexture, vTextureCoord);\n" +
        "    gl_FragColor.r = tc.r * 0.3 + tc.g * 0.59 + tc.b * 0.11;\n" +
        "    gl_FragColor.g = tc.r * 0.3 + tc.g * 0.59 + tc.b * 0.11;\n" +
        "    gl_FragColor.b = …
Run Code Online (Sandbox Code Playgroud)

android opengl-es opencv4android

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

如何使用OpenCV从图像中检测(计数)头发?

我尝试下面使用代码OpenCV的功能cvtColor,CannyHoughLinesP却没有能够得到精确的结果,或在某些情况下无法正常工作.

private boolean opencvProcessCount(Uri picFileUri) {
hairCount = 0;
totalC = 0;
//Log.e(">>>>>>>>","count " + picFileUri);
try {
    InputStream iStream = getContentResolver().openInputStream(picFileUri);
    byte[] im = getBytes(iStream);
    BitmapFactory.Options opt = new BitmapFactory.Options();
    opt.inDither = true;
    opt.inPreferredConfig = Bitmap.Config.ARGB_8888;
    Bitmap image = BitmapFactory.decodeByteArray(im, 0, im.length);

    Mat mYuv = new Mat();
    Utils.bitmapToMat(image, mYuv);
    Mat mRgba = new Mat();
    Imgproc.cvtColor(mYuv, mRgba, Imgproc.COLOR_RGB2GRAY, 4);
    Imgproc.Canny(mRgba, mRgba, 80, 90);
    Mat lines = new Mat();
    int threshold = 80; …
Run Code Online (Sandbox Code Playgroud)

android opencv opencv4android opencv3.1

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

OpenCV + Eclipse + Android:错误org.opencv.video Video.java

我一直在安装OpenCV(这是教程),我阅读了教程但是出现了这个错误(Video.java(PHOTO)中的错误).我已经安装了最新版本.我不明白.任何人都可以帮助我并解释发生了什么?谢谢

错误 ERROR2

java video android opencv opencv4android

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

如何设置OpenCV的相机以纵向和全屏显示预览

我正在尝试创建一个Android应用.它始终以纵向模式显示相机预览,并对其(某些)帧执行一些繁重的图像处理操作.因此,我正在使用OpenCV(它的OpenCV4Android和本机C/C++组件).问题是当使用CameraBridgeViewBase或JavaCameraView类时,OnCameraFrame返回的帧处于横向模式.

现在,如果将Activity定义为使用横向模式(就像OpenCV的示例应用程序一样),预览看起来很好,但任何其他UI视图都倾斜了90度(如前所述,设备应该以纵向模式运行我的应用程序).

如果"活动"设置为纵向模式,UI视图显然看起来正确,但相机预览将倾斜90度.

如果我尝试通过操作OnCameraFrame上的图像矩阵来旋转每个帧,如下所示:

public Mat onCameraFrame(CvCameraViewFrame inputFrame) {
  mRgba = inputFrame.rgba();
  Core.transpose(mRgba,mRgbaT);
  Core.flip(mRgbaT, mRgbaT, -1);
  Imgproc.resize(mRgbaT, mRgbaT, mRgba.size());

  return mRgbaT;
}
Run Code Online (Sandbox Code Playgroud)

然后每个相机的框架填充设备的宽度,但不是它的高度(因此,它看起来像拉伸),加上 - 它大大减慢了帧速率.尝试将图像调整为全屏(或任何不同于原始帧大小的大小)会导致根本不显示图像(黑屏)并抛出以下异常:

E/CameraBridge(11183): Utils.matToBitmap() throws an exception: /home/reports/ci/slave_desktop/50-SDK/opencv/modules/java/generator/src/cpp/utils.cpp:97: error: (-215) src.dims == 2 && info.height == (uint32_t)src.rows && info.width == (uint32_t)src.cols in function void Java_org_opencv_android_Utils_nMatToBitmap2(JNIEnv*, jclass, jlong, jobject, jboolean)
Run Code Online (Sandbox Code Playgroud)

所以,我的问题是:如何在纵向模式和全屏模式下显示OpenCV的相机预览?

不幸的是,由于我的初学者声誉,我不能附加屏幕截图.此外,我知道之前有过类似问题的问题,但没有一个答案似乎完全解决了问题.

camera android opencv opencv4android

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

Android 模拟器相机显示块

我正在研究 OpenCV4Android 的示例教程。当我在模拟器中打开相机时,它会打开一些带有白盒和黑盒的奇怪东西。

由于这个摄像头,我无法运行 OpenCV4Andorid 的示例项目。

这是我的模拟器的设置

模拟器

单击相机按钮时的结果

相机

请你们中的任何人都可以让我知道这件事。我还没有找到任何合适的解决方案来解决我的问题。

我的相机怎么了。我配置正确。

谢谢

camera android emulation android-emulator opencv4android

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

android上opencv的gpu加速

我目前正在研究在 android 嵌入式平台上使用 opencv。我需要实时处理来自多个 USB 摄像头的输入,并且需要 GPU 加速来处理它,例如 opencl、cuda 等。

针对像马里、安德诺等这样的 arm gpus 的 opencv 的 gpu 加速支持的当前状态是什么?

opencv opencv3.0 opencv4android

5
推荐指数
0
解决办法
400
查看次数