基于opencv的相机之图片处理首页效果(六)
来源:互联网 发布:网络兼职被骗报警程序 编辑:程序博客网 时间:2024/05/21 11:37
简介
通过之前,已经有了预览拍照,以及对应图片显示的基本图库。接下来实现对图库中选中的图片,进行进一步的图像处理。本篇是实现图像处理的总体界面实现。
具体实现
效果演示
对应的效果截图如下:
代码讲解
1、从上面的效果图上可以看到,最上面也是两个选项,取消和保存。点击取消,就会清楚掉该图片本轮对图片的相关处理,并返回到图库界面。点击保存,就会将本轮被修改处理过的图片另存为,并返回图库界面。
picDoVariable.mypicBack.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub new AlertDialog.Builder(PicDoing.this).setMessage("确认放弃修改?") .setPositiveButton("确定", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { Intent intent = new Intent(PicDoing.this, mapstorageActivity.class); startActivity(intent); finish(); }}) .setNegativeButton("取消",null) .show(); }}); picDoVariable.mypicSave.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub String tmp, PicPath; long time =System.currentTimeMillis(); tmp = picDoVariable.picDoFunction.getCurrentTime(time); PicPath = picDoVariable.doPicSavepath + tmp + ".jpg"; Imgcodecs.imwrite(PicPath, picDoVariable.myPicDoMat); Intent intent = new Intent(PicDoing.this, mapstorageActivity.class); startActivity(intent); finish(); }});
2、中间区域则显示的图片传过来,即需要被处理的图片,该图片被传入到本界面之后,首先会被复制到一个新图片临时文件,后续的操作都是在这个临时文件中处理,如果点击取消,就放弃掉这个临时文件,点击保存就将该临时文件保存到图像目录中去。
if(picDoVariable.doPicEdit == -1){ picDoVariable.myPicDoMat = Imgcodecs.imread(picDoVariable.DoPicNames[picDoVariable.curDoPicNumber], 1); Imgcodecs.imwrite(picDoVariable.tmpMatName, picDoVariable.myPicDoMat); }else{ picDoVariable.myPicDoMat = Imgcodecs.imread(picDoVariable.tmpMatName, 1);}
3、最底下就是进行图像处理的相关选项:
public String[] firstPicMenu = { "调整", "特效", "马赛克", "拼图", "鬼怪贴图", "图像修补", "加密解密"}; picDoVariable.mypicModeGestureDetector = new GestureDetector(new gestureListener()); private class gestureListener implements GestureDetector.OnGestureListener{ public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) { int i; if(e1.getX() - e2.getX() > picDoVariable.picModeFilpDistance){ if(picDoVariable.modeOffsetNumber < picDoVariable.modeNumber - 6){ picDoVariable.modeOffsetNumber += 1; } for(i=0; i<6; i++){ picDoVariable.mypicDoImageButton_1_1[i].setImageResource(picDoVariable.firstPicMenuPicture[(i+picDoVariable.modeOffsetNumber)*2]); picDoVariable.mypicDoTextView_1[i].setText(picDoVariable.firstPicMenu[(i + picDoVariable.modeOffsetNumber)]); } } if(e2.getX() - e1.getX() > picDoVariable.picModeFilpDistance){ if(picDoVariable.modeOffsetNumber > 0){ picDoVariable.modeOffsetNumber -= 1; } for(i=0; i<6; i++){ picDoVariable.mypicDoImageButton_1_1[i].setImageResource(picDoVariable.firstPicMenuPicture[(i+picDoVariable.modeOffsetNumber)*2]); picDoVariable.mypicDoTextView_1[i].setText(picDoVariable.firstPicMenu[(i + picDoVariable.modeOffsetNumber)]); } } return true; } }public class ButtonListener implements OnClickListener, OnTouchListener{ @Override public void onClick(View arg0) { // TODO Auto-generated method stub int i; i = arg0.getId(); i = i + picDoVariable.modeOffsetNumber; if(i == 0){ ............ }else if(i == 1){ ............ } .............. }}
从截图中可以看到,界面中同时只显示6个操作选项。具体操作中,根据代码中的GestureDetector,在使用中左右滑动时候,显示的操作选项会对应更新,点击功能选项之后,就会进入到对应的功能操作界面中去。
具体演示下载:http://download.csdn.net/detail/u011630458/9261617
0 0
- 基于opencv的相机之图片处理首页效果(六)
- 基于opencv的相机之最初布局(一)
- 基于opencv的相机之增加图库功能(五)
- 基于opencv的相机之特效功能实现(八)
- 基于opencv的相机之拼图功能实现(十)
- OpenCV之相机黑白处理
- 基于opencv的相机标定
- 基于opencv的相机之调整功能实现(七)
- 基于opencv的相机之马赛克功能实现(九)
- 基于opencv的相机之加密解密功能实现(十三)
- 基于opencv的相机之camera切换/闪光灯/边缘模式/分辨率(二)
- 基于opencv的相机之图像保存异常/模糊背景/黑白背景(四)
- 基于opencv的相机之鬼怪贴图功能实现(十一)
- 基于opencv的相机之图像修补功能实现(十二)
- opencv+相机LOMO效果
- 【MFC】基于opencv的趣味相机
- 基于OPENCV的相机标定及代码
- 淘宝首页 图片滑动切换效果 基于jQuery的animate方法实现
- 超级终端连接开发板出现Please press Enter to activate this console的问题
- tomcat内存不足,一段时间后不响应了
- 字符串NSString和不可变字符串NSMutableString的基础知识
- stringBuffer 与StringBulider长度分析
- Notification--通知
- 基于opencv的相机之图片处理首页效果(六)
- OC语言NSDate的使用以及类的扩展
- 扯扯DNS解析的流程
- Debian系统apt-get命令整理修改更新源
- nyoj--86--找球号(一)(hash&&set&&二分)
- x的平方根(LintCode)
- hdu5093
- 树莓派从零安装物联网alljoyn环境
- HDU 1688 Sightseeing 【次短路条数】