android代码查找图像,Android平台上利用opencv进行图像的边沿检测
原标题:Android平台上利用opencv进行图像的边沿检测
近开始接触opencv for Android,从网上down了图像的边沿检测的代码。
测试图片:
在Android2.3.1模拟器上跑了,如下:
代码如下:
package cn.netjava.opencv;
import java.io.File;
import org.opencv.core.CvType;
import org.opencv.core.Mat;
import org.opencv.core.Size;
import org.opencv.highgui.Highgui;
import org.opencv.imgproc.Imgproc;
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.drawable.BitmapDrawable;
import android.net.Uri;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.Toast;
public class TestOpencv extends Activity {
private Button deal_button, recall_button;
private ImageView imageview;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
double scale = 0.1;
imageview = (ImageView)this.findViewById(R.id.imageView1);
Bitmap bm1=BitmapFactory.decodeFile("/sdcard/girl.jpg");
imageview.setImageBitmap(bm1);
Mat img = Highgui.imread("/sdcard/girl.jpg",0);
Size dsize = new Size(img.width()*scale,img.height()*scale);
Mat img2 = new Mat(dsize,CvType.CV_8SC1);
Mat img3 = new Mat();
img.convertTo(img2, CvType.CV_8SC1);
Imgproc.Canny(img, img3, 123, 250);
boolean flag=Highgui.imwrite("/sdcard/new.jpg", img3);
if(flag)
{
File f = new File("/sdcard/new.jpg");
if(f.exists())
{
Bitmap bm=BitmapFactory.decodeFile("/sdcard/new.jpg");
imageview.setImageBitmap(bm);
}
}//end if
else{
Toast.makeText(TestOpencv.this, "===========图片写入失败!============!!", 3).show();
}
}
}
但自己在实践过程中,一个小问题着实费了我一番功夫。
将进行转化的矩阵写到sdcard中,总是写不进去。
弄了很多,多亏一学姐指点,程序对sdcard进行操作时,要在XML文件中进行权限控制。
在AndroidManifest.xml中加入上面两行代码一切OK啦~
---------------------
作者:SweetRZ
来源:CSDN
原文:https://blog.csdn.net/u013755307/article/details/19897497
版权声明:本文为博主原创文章,转载请附上博文链接!返回搜狐,查看更多
责任编辑:
android代码查找图像,Android平台上利用opencv进行图像的边沿检测相关推荐
- 在python平台上利用pymol来查找PDB文件中蛋白质的相互作用位点
这篇代码写的可能有点问题,大家如果有需要,去看另一篇吧.如果有啥不足,请批评指正. 在python平台上利用pymol来查找PDB文件中蛋白质的相互作用位点 关于蛋白质结合位点,查阅了很多篇文献,大多 ...
- 如何在阿里云物联网平台上利用已有的 IoT Studio项目模板创建项目
目录 前言 一.在阿里云找到已有的IoT Studio公开项目模板 二.选择公开项目模板 三.其他选择 结语 前言 前面的文章里,我们介绍了如何在阿里云物联网平台上添加LoRa节点设备,并让LoRa节 ...
- 利用opencv对图像进行长曝光
利用opencv对图像进行长曝光 本文首发于公众号[Opencv视觉实践],翻译自光头哥哥的博客: [Long exposure with OpenCV and Python],仅做学习分享. 原文链 ...
- android代码混淆作用,Android分享:代码混淆那些事
1) 前言 ProGuard是一个开源的Java代码混淆器.它可以混淆Android项目里面的java代码,对的,你没看错,仅仅是java代码.它是无法混淆Native代码,资源文件drawable. ...
- android代码说明文档,android:label说明
文章目录 1. 说明 android:label 用于app 在切换activity的时候,自动更换左上角的显示 2. 代码架构 3. String.xml 字符串资源文件My Application ...
- android 代码加view,Android中将View添加至窗口的源码分析
本文主要内容是讲解一个视图View或者一个ViewGroup对象是如何添加至应用程序窗口中的.下文中提到的窗口可泛指我们能看到的界面,包括一个Activity呈现的界面(我们可以将之理解为应用程序窗口 ...
- android 代码签名apk,[Android]混淆代码后生成带签名的apk
Android从2.3的SDK开始,将ProGuard混淆代码的功能加入了进来. 我们可以从android sdk的tools目录下看到有一个proguard目录.说明具有了代码混淆的功能. 至于如何 ...
- android 批量查找view,Android Recyclerview实现多选,单选,全选,反选,批量删除的功能
效果图如下: recyclerview 实现多选,单选,全选,反选,批量删除的步骤 1.在recyclerview布局中添加上底部的全选和反选按钮,删除按钮,和计算数量等控件 2.这里选中的控件没有用 ...
- Android代码混淆方法,Android 代码混淆零基础入门
内容提要 本篇文章主要有三个部分,让读者读完后能自己写规则混淆项目 对Android代码怎么开启混淆做一个简单的介绍. 对混淆规则做一个简单介绍: 在混淆过后Crash日志反推代码工具retrace. ...
最新文章
- golang多核的使用
- 使用NDK开发SQLite3
- 【Android开发】Android 删除指定文件和文件夹
- 组件 DataList 和 ObjectDataSource
- SAP Spartacus里product数据请求的HTTP url是在哪里维护的
- python:校验邮箱格式
- 支付宝上线长辈模式: 字体图标加大 去除了营销推送
- Anylogic 仿真建模(一)
- 今天开始学习ADO.NET中的Connection对象(一)--SqlConnection对象连接SQL Server
- python递归汉诺塔详解_Python实现汉诺塔递归算法
- 时文阅读-The economist-Whatever Carlos Ghosn’s misdeeds, Japan’s openness is also on trial
- Error parsing column 33
- PMP-12项目采购管理
- python画圣诞帽_用Python给头像戴圣诞帽
- html5 css3时间特效,炫酷纯CSS3响应式垂直时间轴特效
- vue引入阿里巴巴icon
- Realtime Multi-Person 2D Pose Estimation Using Part Affinity Fields【菜鸟读者】
- frp 内网穿透 多系统 多模式(详细+多个应用)
- live555 android,live555
- 服务器ghost备份后无法进入系统还原,使用Ghost备份/还原系统的速度很慢原因分析与解决...
热门文章
- 证明谷歌 Go 魅力的 10 个开源项目
- android 绑定微信号,Android工作整理-梳理微信的登录、分享与支付
- python判断是相邻数字,检查Python中相邻数字的绝对差之和是否为素数
- 分配任务的代码PHP,php计划任务的示例代码分享
- android9开发者模式 s8,Android 9.0或加速Galaxy S8/9电池消耗 谨慎更新
- tcp拥塞控制_面试必备TCP(四):拥塞控制
- ionic轮播,滑动之后不进行轮播
- 计算机access预测题,2016计算机二级《Access》考试预测题及答案
- html触摸电脑ui系统,如何用高级UI制作触摸系统界面
- volatile指令重排_学会了volatile,你变心了,我看到了