首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

用Matlab在图像上画矩形框

转载请注明:转载自 祥的博客 原文链接:http://blog.csdn.net/humanking7/article/details/46819527 ---- 在毕业设计的时候写论文画图,要在一个图像上精确的标记出要处理的区域...编程思想和注意事项 其实程序的思路很简单,就是在局域外面像素的值(颜色)覆盖掉就行了,但是要注意几点内容。 原图像通道问题(边框颜色问题)。...图像在Matlab中是以数组的形式存放的,在图像像素坐标系中,x方向用数组的列表示,y方向用数组的行表示。在取图像元素时候一定要注意。...绘制矩形框程序 保存为 drawRect.m 文件,这是一个函数文件。...clc; clear; close all; %----------------------------------- %给图像加一个矩形框 %-----------------------------

3.5K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    基于MNN在Android手机上实现图像分类

    前言MNN是一个轻量级的深度神经网络推理引擎,在端侧加载深度神经网络模型进行推理预测。...下面就介绍如何使用MNN在Android设备上实现图像分类。...在构造方法中,通过参数传递的模型路径加载模型,在加载模型的时候配置预测信息,例如是否使用CPU或者GPU,同时获取网络的输入输出层。同时MNN还提供了很多的图像预处理工具,对图像的预处理非常简单。...要注意的是图像的均值dataConfig.mean和标准差dataConfig.normal,还有图片的输入通道顺序dataConfig.dest,因为在训练的时候图像预处理可能不一样的,有些读者出现在电脑上准确率很高...核心代码如下,创建一个子线程,子线程中不断从摄像头预览的AutoFitTextureView上获取图像,并执行预测,并在页面上显示预测的标签、对应标签的名称、概率值和预测时间。

    3K20

    基于TNN在Android手机上实现图像分类

    在app/src/main/cpp/目录下编写JNI的C++代码。TNN工具编写一个ImageClassifyUtil.java工具类,关于TNN的操作都在这里完成,如加载模型、预测。...probability = result[i]; r = i; } } return r;}不同的模型,训练的预处理方式可能不一样,TNN 的图像预处理在...,另一个是使用相机实时预测并显示预测结果。...中,进入到页面我们就要先加载模型,我们是把模型放在Android项目的assets目录的,我们需要把模型复制到一个缓存目录,然后再从缓存目录加载模型,同时还有读取标签名,标签名称按照训练的label顺序存放在...核心代码如下,创建一个子线程,子线程中不断从摄像头预览的AutoFitTextureView上获取图像,并执行预测,并在页面上显示预测的标签、对应标签的名称、概率值和预测时间。

    1.7K20

    在Android手机上使用PaddleMobile实现图像分类

    root@fc6f7e9ebdf1:/paddle-mobile# exit 9、在paddle-mobile根目录下,有一个build目录,我们编译好的paddle-mobile库就在这里。...cd paddle-mobile/tools/ sh build.sh android (可选)如果想编译针对某一个网络编译更小的库时,可以在命令后面加上相应的参数,如下: sh build.sh android...之后按照以下的步骤开始执行: 1、在main目录下创建l两个assets/paddle_models文件夹,这个文件夹我们将会使用它来存放PaddleFluid训练好的预测模型,官方也提供了一些训练好的模型和预测图像...预测有两种,一种是合并的模型,另一种是非合并的模型,在本项目中,我们使用的是非合并的模型,下面就是笔者使用的一个googlenet神经网络训练102中花卉数据集得到的预测模型,可以到这里下载笔者训练好的模型...目录下创建一个jniLibs文件夹,这个文件夹是存放CPP编译库的,在本项目中就存放上一部分编译的libpaddle-mobile.so,这里可以下载笔者编译好的模型。

    77420

    Android SurfaceView onTouchEvent进阶操作OpenCV显示

    前一篇文章《Android SurfaceView onTouchEvent配合OpenCV显示》介绍了Android SurfaceView中通过onTouchEvent事件点击后在OpenCV中画了个圆显示出来...实现效果 通过点击,移动在图像上画上矩形 ★ 实现思路 ★ 在OpenCV中画矩形需要两个坐标点即可,所以我们在点击屏幕时传递给OpenCV一个启始坐标点和一个结束坐标点,OpenCV中对每一帧的图像的传递进来的两个坐标点画矩形即可...我们在VaccaeOpenCV的类中再加入一个新的方法Cameraframetouchgetbitbmp,参数为传入的图像,坐标的集合,还有一个是结束标志。...像在OpenCV中画圆,画矩形我们最简单的方法已经会,这里主要就是看看传进来的List我们怎么取出来,在JNI中传递LIst集合,我们在《Android NDK编程(八)--- JNI中List...false, bitmap_config); AndroidBitmap_unlockPixels(env, bmp); return _bitmap; } 下图就是手指按下后,移动中画矩形的图像效果

    1.6K20

    使用TensorFlow Lite在Android手机上实现图像分类

    1、最方便的就是在训练的时候保存tflite格式的模型,主要是使用到tf.contrib.lite.toco_convert()接口,下面就是一个简单的例子: import tensorflow as...开发Android项目 有了上面的模型之后,我们就使用Android Studio创建一个Android项目,一路默认就可以了,并不需要C++的支持,因为我们使用到的TensorFlow Lite是Java...1、创建完成之后,在app目录下的build.gradle配置文件加上以下配置信息: 在dependencies下加上包的引用,第一个是图片加载框架Glide,第二个就是我们这个项目的核心TensorFlow...load_model()方法是加载模型,并得到一个对象tflite,之后就是使用这个对象来预测图像,同时可以使用这个对象设置一些参数,比如设置使用的线程数量tflite.setNumThreads(4)... 6、之后在res创建一个xml目录,然后创建一个file_paths.xml文件,在这个文件中加上以下代码,这个是我们拍照之后图片存放的位置: <?

    3.8K41

    Android通过OpenCV和TesserartOCR实时进行识别

    前言 最近一系列的文章都是用Android利用OpenCV NDK的方法通过摄像头实时获取图像进行图像处理,在上一篇《Android使用Tesseract-ocr进行文字识别》我们学习了一下TesserartOCR...视频效果 代码实现 主框架 程序的主框架还是用《Android利用SurfaceView显示Camera图像爬坑记(六) -- 用OpenCV进行Canny边缘检测》里面的那套,我们重新建了一个新的项目...,返回是Bitmap的列表,第一个还是原图用于显示,后面的就是我们截取的判断为车牌的矩形图用于OCR识别 ?...图像处理核心方法 核心方法我们自己新建了一个C++的类,生成了testcv的头文件和源文件。 ? 核心代码 这里面是我们查找类似车牌的处理方法,部分是参考网上的定位方法。...如果是画线 if (VerifySize(currentrect)) { currentrect.points(Vertices); //在源图上画四点的线

    3.9K30

    基于Paddle Lite在Android手机上实现图像分类

    开发Android项目创建一个Android项目,在app/libs目录下存放上一步编译得到的PaddlePredictor.jar,并添加到app库中,添加方式可以是选择这个jar包,右键选择add...在构造方法中,通过参数传递的模型路径加载模型,在加载模型的时候配置预测信息,如预测时使用的线程数量,使用计算资源的模式,要注意的是图像预处理的缩放比例scale,均值inputMean和标准差inputStd...,因为在训练的时候图像预处理可能不一样的,有些读者出现在电脑上准确率很高,但在手机上准确率很低,多数情况下就是这个图像预处理做得不对。...,但是目前输入的是一个Bitmap的图片,所以需要把Bitmap转换为浮点数组,在转换过程中需要对图像做相应的预处理,如乘比例,减均值,除以方差。...核心代码如下,创建一个子线程,子线程中不断从摄像头预览的AutoFitTextureView上获取图像,并执行预测,并在页面上显示预测的标签、对应标签的名称、概率值和预测时间。

    1.1K10

    基于Paddle Lite在Android手机上实现图像分类

    开发Android项目 创建一个Android项目,在app/libs目录下存放上一步编译得到的PaddlePredictor.jar,并添加到app库中,添加方式可以是选择这个jar包,右键选择add...在构造方法中,通过参数传递的模型路径加载模型,在加载模型的时候配置预测信息,如预测时使用的线程数量,使用计算资源的模式,要注意的是图像预处理的缩放比例scale,均值inputMean和标准差inputStd...,因为在训练的时候图像预处理可能不一样的,有些读者出现在电脑上准确率很高,但在手机上准确率很低,多数情况下就是这个图像预处理做得不对。...,但是目前输入的是一个Bitmap的图片,所以需要把Bitmap转换为浮点数组,在转换过程中需要对图像做相应的预处理,如乘比例,减均值,除以方差。...核心代码如下,创建一个子线程,子线程中不断从摄像头预览的AutoFitTextureView上获取图像,并执行预测,并在页面上显示预测的标签、对应标签的名称、概率值和预测时间。

    77787

    在Android手机上使用腾讯的ncnn实现图像分类

    《在Android设备上使用PaddleMobile实现图像分类》,使用的框架是百度开源的PaddleMobile。...在本章中,笔者将会介绍使用腾讯的开源手机深度学习框架ncnn来实现在Android手机实现图像分类,这个框架开源时间比较长,相对稳定很多。...# 进入到ncnn源码根目录下 cd ncnn # 创建一个新的文件夹 mkdir -p build-android-armv7 # 进入到该文件夹中 cd build-android-armv7 #...开发Android项目 我们在Android Studio上创建一个NCNN1的项目,别忘了选择C++支持。 ? 其他的可以直接默认就可以了,在这里要注意选择C++11支持。 ?...在cpp目录下创建一个C++文件,并编写以下代码,这段代码是用于加载模型和预测图片的: #include android/bitmap.h> #include android/log.h> #include

    3.6K60

    android 在一个应用中启动另一个应用android 在一个应用中启动另一个应用

    android 在一个应用中启动另一个应用 在程序开发过程当中,常遇到需要启动另一个应用程序的情况,比如在点击软件的一个按钮可以打开地图软件。...pi = null; try { pi = packageManager.getPackageInfo("com.alibaba.android.rimet...intent.addCategory(Intent.CATEGORY_LAUNCHER); ComponentName cn = new ComponentName("com.alibaba.android.rimet...其实手机安装的每一个应用的包名都是可以查到的,只要我们查到相关应用的包名,再通过它获得主类名,再按照上面的方法就可以了。 第一步:怎么获得包名?...反编译工具:android-classyshark https://github.com/EasySpringBoot/android-classyshark 通过java -jar xxx.jar执行

    52040

    C++ OpenCV Contrib模块LBF人脸特征点检测

    前言 《OpenCV源码Android端编译,用时三天,我编了个寂寞。。。》...实现方式 # 思路 1 加载OpenCV DNN和FacemarkLBF的模型(FacemarkLBF在OpenCVr的Contrib模块中) 2 使用DNN人脸检测获取图像中所有人脸的矩形框 3 调用...原来的detect的函数中我们是在原图上画出红色矩形框,返回的是vector的值,因为特征点需要的是vector的值,所以又新写了一个函数 bool dnnfacedetect:...05 关于图像缩放的问题 ? ? 上面两个图中可以看到,像素差别好大,如果不用缩放的话,第二张图只能看到左上角的图片,为了解决这个问题,所以写了一个函数用于处理图像绽放的问题。...然后在每次读取完图像后先进行缩放处理,即可正常显示了。 ? 比较核心的东西上面都已经讲完了,全部的代码可以访问下面的链接,或是点击最后的阅读原文下载。

    93330

    基于Tensorflow2 Lite在Android手机上实现图像分类

    通过上面得到的mobilenet_v2.h5模型,我们需要转换为tflite格式的模型,在Tensorflow2之后,这个转换就变动很简单了,通过下面的几行代码即可完成转换,最终我们会得到一个mobilenet_v2...在构造方法中,通过参数传递的模型路径加载模型,在加载模型的时候配置预测信息,例如是否使用Android底层神经网络APINnApiDelegate或者是否使用GPUGpuDelegate,同时获取网络的输入输出层...有了tensorflow-lite-support库,数据预处理就变得非常简单,通过ImageProcessor创建一个数据预处理的工具,之后在预测之前使用这个工具对图像进行预处理,处理速度还是挺快的,...要注意的是图像的均值IMAGE_MEAN和标准差IMAGE_STD,因为在训练的时候图像预处理可能不一样的,有些读者出现在电脑上准确率很高,但在手机上准确率很低,多数情况下就是这个图像预处理做得不对。...核心代码如下,创建一个子线程,子线程中不断从摄像头预览的AutoFitTextureView上获取图像,并执行预测,并在页面上显示预测的标签、对应标签的名称、概率值和预测时间。

    2.4K10

    SketchBook Pro2021激活版SketchBook2022免费版SketchBook2023下载安装教程

    AutodeskSketchBook Pro 2021是一款专业的数码画画插图软件,它拥有一个极其优美的界面,可以在每个设备上最大化地显示空间,让用户可以享受到出色的绘画体验。...3、自然的绘画经验:在Windows,Mac,iOS和Android上使用简约界面。4、无限刷:调整140多种标准画笔,创建新画笔或导入由专业画家设计的画笔。...6、四个对称尺寸:使用X,Y,XY和多达16个扇区的径向对称图形进行绘制,以实现完美对称的设计7、预测性中风:使用预测笔划使线条流畅,并将基本形状校正为圆形,三角形和矩形8、用手机扫描草图:使用手机或平板电脑扫描草图...在你的手指上画直线、矩形、圆、椭圆,绘制图案或者捕捉导引。很容易添加注释和说明,使用新增加的类型选项。3、图像增强功能:通过调整颜色、对比度、画布大小和裁剪,图片的外观可以微调。...它能让您打开并保存来自多种图像格式的图像,包括 Adobe®的 Photoshop®软件,直接将文件移动到或删除收起部分安装步骤看图下载:1知识兔下载,双击运行sketchbook Pro 2021程序

    1.2K30

    基于Tensorflow2 Lite在Android手机上实现图像分类

    通过上面得到的mobilenet_v2.h5模型,我们需要转换为tflite格式的模型,在Tensorflow2之后,这个转换就变动很简单了,通过下面的几行代码即可完成转换,最终我们会得到一个mobilenet_v2...在构造方法中,通过参数传递的模型路径加载模型,在加载模型的时候配置预测信息,例如是否使用Android底层神经网络APINnApiDelegate或者是否使用GPUGpuDelegate,同时获取网络的输入输出层...有了tensorflow-lite-support库,数据预处理就变得非常简单,通过ImageProcessor创建一个数据预处理的工具,之后在预测之前使用这个工具对图像进行预处理,处理速度还是挺快的,...要注意的是图像的均值IMAGE_MEAN和标准差IMAGE_STD,因为在训练的时候图像预处理可能不一样的,有些读者出现在电脑上准确率很高,但在手机上准确率很低,多数情况下就是这个图像预处理做得不对。...核心代码如下,创建一个子线程,子线程中不断从摄像头预览的AutoFitTextureView上获取图像,并执行预测,并在页面上显示预测的标签、对应标签的名称、概率值和预测时间。

    3.3K40

    Python之OpenCV库15行代码进行图像匹配定位

    它计算目标图像和模板图像的差的平方,并将差的平方和作为匹配结果。匹配结果越小,表示匹配程度越好。可以在传参时缩写为数字1,在上面的例子中就是写的缩写形式1。...minMaxLoc(mt) # mt为前面匹配锁定函数得到的然后minLocation是最小值的位置,maxLocation是最大值的位置,就是都有x和y第六步,根据得到的x和y进行相关数据的计算,方便我们在原图像上画出矩形...w,h = img2.shape[:2] 然后再最小点加上最高宽度和高度,得到的就是我们所查找的区域br = (w+minLocation[0],h+minLocation[1])然后我们在原图形上画矩形...,用的是rectangle函数,我们将所匹配到的区域,画一个矩形框起来cv.rectangle(img,minLocation,br,(0,0,255),2)第一个参数是原图片,第二个和第三个是矩形的两点...,第四个参数是矩形的宽度然后我们再展示图片,最后面的那两个是用来指定关闭的。

    2.5K42

    图片人脸检测——OpenCV版(二)

    技术实现思路 图片转换成灰色(去除色彩干扰,让图片识别更准确) 图片上画矩形 使用训练分类器查找人脸 具体实现代码 图片转换成灰色 使用OpenCV的cvtColor()转换图片颜色,代码如下: import...img/xingye-1.jpg" img = cv2.imread(filepath) # 转换灰色 gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # 显示图像...cv2.imshow("Image", gray) cv2.waitKey(0) cv2.destroyAllWindows() 图片上画矩形 使用OpenCV的rectangle()绘制矩形,代码如下...imshow("Image", img) # 显示图像 cv2.waitKey(0) cv2.destroyAllWindows() # 释放所有的窗体资源 使用训练分类器查找人脸 在使用OpenCV...的人脸检测之前,需要一个人脸训练模型,格式是xml的,我们这里使用OpenCV提供好的人脸分类模型xml,下载地址:https://github.com/opencv/opencv/tree/master

    79930
    领券