- 博客(14)
- 收藏
- 关注
原创 Android Camera旋转角度总结
开发过Android自定义相机的朋友们估计都被相机的各种乱七八糟的旋转角度适配坑过,本文将对Camera的各种角度进行解析。一、适配目标根据相机旋转角度以及屏幕显示旋转角度选择相机预览数据显示到View上的预览数据显示旋转角度,使眼睛直接看到的真实画面和手机屏幕中显示的画面效果相同。**相机旋转角度:**相机成像相对于手机的旋转角度,若设备已经安装上了相机,那么该相机相对于设备的旋转角度...
2019-08-18 23:56:53
14261
3
原创 Android多种方式实现相机圆形预览
效果图如下:一、为预览控件设置圆角为控件设置ViewOutlineProvider public RoundTextureView(Context context, AttributeSet attrs) { super(context, attrs); setOutlineProvider(new ViewOutlineProvider()...
2019-08-05 17:18:08
2018
4
原创 Android使用Camera2获取预览数据
一、Camera2简介Camera2是Google在Android 5.0后推出的一个全新的相机API,Camera2和Camera没有继承关系,是完全重新设计的,且Camera2支持的功能也更加丰富,但是提供了更丰富的功能的同时也增加了使用的难度。Google的官方Demo:https://github.com/googlesamples/android-Camera2Basic二、Came...
2019-08-05 17:17:22
1155
1
原创 Android中的JNI使用简介
一、本文说明本文不对Android工程的各种配置做说明,只是简单介绍下开发过程中如何进行C与Java互相调用以及出现异常情况的处理。二、NDK简介Android NDK 是一套允许您使用 C 和 C++ 等语言,以原生代码实现部分应用的工具集。在开发某些类型的应用时,这有助于您重复使用以这些语言编写的代码库。三、JNI简介JNI是Java Native Interface的缩写,它提供了...
2019-08-05 17:16:45
247
原创 图像实战 - 图像格式转换
在使用一些图像处理SDK时,我们常常会遇到一些图像格式的限制,比如我们从相机流中获取了RGB数据,但是在用某些SDK时却发现SDK不能直接支持该类数据,我们可能需要进行进一步的转换才能调用SDK。因此为了方便广大开发者,本文提供了一些常见的图像转换方法。####先介绍下转换中可能用到的一些函数:其中包括RGB和YUV的互换函数,源于网上流传较多的一些公式,以及经常重复用到的对齐函数// RGB...
2019-08-05 17:15:41
606
1
原创 图像实战 - 图像的裁剪
在开发相机程序时,我们可能并不需要显示全部的预览数据,而是显示部分的数据,因此就会有图像的裁剪需求。本文介绍了一些常见的YUV、RGB数据的裁剪方法。1. 裁剪NV21或NV12需要注意Y、U、V三者的共用关系,Y的裁剪比较直接;但是对于U和V而言,U和V的大小各只有Y的大小的1/4(U的宽高和V的宽高都是Y的宽高的一半),因此在横纵向都要进行跳行,在横向由于U和V是交叉排序,width / ...
2019-08-05 17:15:05
600
原创 图像实战 - 图像的旋转
在开发相机程序显示相机预览数据时,有时相机的位置是固定的,那我们可能会需要用到图像的旋转进行纠正,以获取我们需要的旋转一定角度后的图像。本文介绍了一些常见的YUV、RGB数据的旋转方法。一、 按像素点旋转图像假设有以下一张图像:Pixel1 Pixel2 Pixel3 Pixel4Pixel5 Pixel6 Pixel7 Pixel8其图像分辨率是width x heig...
2019-08-05 17:12:28
676
原创 图像实战 - 图像的镜像
在开发相机相关程序时,由于人们习惯于看镜子,因此开发者们经常会遇到镜像显示预览数据的需求。各个手机厂家也了解这一点,因此一般手机打开相机切换到前置摄像头看到的画面都是镜像的。本文提供了一些常见YUV、RGB数据的水平镜像和垂直镜像方法。一、按像素点将图像镜像图像可按水平镜像和垂直镜像。假设有以下一张图像:Pixel1 Pixel2 Pixel3 Pixel4Pixel5 Pix...
2019-08-05 17:11:45
1012
原创 图像实战 - 图像格式介绍
ArcFace 2.0 API目前支持多种图像格式:BGR24、NV21、NV12、I420、YUYV(Android、IOS只支持其中的部分)。以下介绍这几种图像格式的内存排列方式。一、相关图像颜色空间介绍1. RGB颜色空间RGB颜色空间以Red、Green、Blue三种基本色为基础,进行不同程度的叠加,产生丰富而广泛的颜色,所以俗称三基色模式。常见的RGB格式有:RGB_565、RG...
2019-08-05 17:09:46
3749
原创 Android打开相机进行人脸识别,使用虹软人脸识别引擎
上一张效果图,渣画质,能看就好功能说明: 人脸识别使用的是虹软的FreeSDK,包含人脸追踪,人脸检测,人脸识别,年龄、性别检测功能,其中本demo只使用了FT和FR(人脸追踪和人脸识别),封装了开启相机和人脸追踪、识别功能在FaceCameraHelper中。实现逻辑: 打开相机,监听预览数据回调进行人脸追踪,且为每个检测到的人脸都分配一个trackID(上下帧变化不大的人脸框可认为...
2018-06-24 16:29:19
4476
原创 Android中SearchView的OnClick被屏蔽的解决办法
写毕设时想模仿网易严选的SearchView点击事件:首页点击后跳转到另一个Activity进行搜索,中间使用共享元素动画(严选的首页可能不是SearchView)但是发现无论给SearchView设置OnClickListener还是OnTouchListener都无效,甚至把SearchView的源码复制过来改但是都没奏效。最后用了一个骚办法:加一层View,设置View的点击事件。其实第一个...
2018-03-10 16:18:55
2330
1
原创 使用Android自带的material design图标
很简单但是很实用的教程,只是很多人可能不知道,分享一下,很多图标就不需要去找素材了。选择如图所示路径:点击中间的android机器人小图标可以选择其他图标还能搜索,而且很多常用的图标都有,是不是省去了很多找图标的时间?颜色不喜欢没关系,在xml文件中可以修改在布局中显示:...
2017-06-20 16:38:11
2702
原创 android使用贝塞尔曲线做一个简单的玩意
效果挺简单的 ,简单说下思路。这个图由7个点确定:两个圆心P1,P2,每个圆的两个对称点P3,P4,P5,P6,以及两个圆心的终点P7(P5,P6,P7图中没画,相信大家清楚)点的获取:首先选取一个固定点作为中间不动的球的圆心,然后在onTouchEvent中记录按下的点重新绘制,难点在于每个球取的点的获取,动球在固定的球的左上,右上,左下,右下方向时,sin
2017-05-23 14:11:41
740
原创 OPT算法,FIFO算法,LRU算法,LFU算法的java程序
import java.util.Scanner;public class systemLab3 {final static int NUM=20;final static int FRAME = 3;public static int []pages = new int[NUM];public static void
2016-12-20 20:13:06
1177
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人