自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

breakloop

我想说点什么,说点啥呢?得,就这些吧。

  • 博客(179)
  • 资源 (5)
  • 收藏
  • 关注

原创 Android Framework学习笔记(3)----Binder

跨进程通信, InterProcess Communication.

2024-04-11 11:49:47 162 1

原创 Android Framework学习笔记(2)----系统启动

SetupSelinux:安全策略。每个类型的进程都有自己的权限,能否访问网络,能否访问文件,接收广播等。.rc文件:run command的缩写,是一堆脚本指令,init进程可以读取rc文件来运行脚本,从而启动其它进程。在解析和执行.rc文件的过程中,会fork一个zygote进程。而安卓上其他的应用进程都是由zygote进程孵化的。init是系统中的第一个进程,其它进程都是它的子进程。SecondStageMain:挂载额外文件,设置进程OOM等级,一个APP,可以有多个进程,一个进程有一个VM。

2024-04-08 23:03:58 531 1

原创 android framework 学习笔记(1)

框架从上至下:应用层(Application),java framework(Application Framework), C++ framework(Libraries)/Android Runtime, Linux kernel。

2024-04-01 07:15:42 234

原创 Android上执行shell命令的总结

总结在Android上运行shell命令遇到的问题。

2024-03-25 19:08:26 212

转载 校正Camera预览画面方向

本文来源:Android Camera1 教程 · 第二章 · 预览第6部分。其镜面处理部分,描述错误。旋转270或90度,效果相同,并不能解决镜面问题。如果没有做任何画面方向的校正,我们看到的画面很可能是横向的,这是因为手机上的摄像头传感器方向不一定是垂直的。在做预览画面方向的校正之前我们先来了解五个概念,分别是自然方向、设备方向、局部坐标系、屏幕方向和摄像头传感器方向。自然方向当我...

2024-01-03 10:21:15 66

原创 问答--Anaconda

什么是Anaconda?Anaconda是python开发环境的管理软件,你可以用它根据python的版本,创建不同的开发环境,并在多个开发环境间进行切换。Anaconda的主体是conda和python(以及与之兼容的各种库)。conda类似于pip,可以下载,安装,更新不同版本的软件。注:anaconda中也包含pip.为什么要用Anaconda?与Python版本有关。当前存在2,3两个大版本,但不兼容。因此,对于不同的python脚本,版本的灵活切换是一个切实的问题。而anacond

2021-03-26 12:00:34 217

原创 关于工作方法的总结

去年一直在忙碌,累得不行。回头想想却不知道忙了什么。心里郁闷得很,于是与其它几位同事私聊,发现大多数同事都有类似的问题。所以想把问题列出来,并寻找解决方式和方法。期间,也有同事提出建议,例如采用敏捷开发之类的解决方案,加入看板等可视化工具等。个人不抵触,只是细想下来,敏捷开发侧重团队视角,对于个人,“架构”还是偏重。所以,还是想通过细节的调整,完成个人工作方式的改变。不论团队采用何种合作方式,都要...

2020-03-14 14:20:40 493

原创 Android Camera1小结

1.概述本文将仿照此前博文Android NDK Camera2小结的方式,来记录Camera1的使用。Camera1仅为Java实现(不必纠结于此,Native实现...JNI反调...你懂的~且性能差别不大)。本文的讲解基于UML Component图,描述Camera1核心对象及API的调用生成关系。如缩略图不清晰,可点击放大。Component图中,模块为函数,节点为对象。...

2019-09-28 22:33:30 1109

原创 Android NDK Camera2小结

1.概述Android自带camera API有两种,Camera1和Camera2。其中,Camera1始于Android最初版本,仅为java层实现。Camera2则有两种实现。Java层Camera2始于andorid 5.0。Native Camera2则开始于android7.0(API level24)。本文将对Native Camera2的使用(仅预览功能)进...

2019-09-23 23:44:52 12106 7

原创 The content of the adapter has changed but ListView did not receive a notification

java.lang.IllegalStateException: The content of the adapter has changed but ListView did not receive a notification. Make sure the content of your adapter is not modified from a background thread, but...

2019-09-17 10:34:58 267

原创 android_native_app_glue框架使用流程

使用原因最近项目中用到ndk camera,因此,学习了一下google所提供的ndk sample。sample中有两个module,分别是basic和texture-view。texture-view module将textureview作为传参,传入ndk camera。而basic module通过android_native_app_glue框架绑定对应Activity,无需传入...

2019-08-13 18:56:20 4221

原创 YUV简介

最近项目中遇到YUV->RGB的转换,顺便对YUV进行了一下简单了解。解决了以下疑问。(1)什么是YUV。(2)YUVxxx采样格式是什么含义。(3)为什么可以存在xxx采样格式。(4)YUV的存储格式。话归正题。概述YUV是颜色编码方式,常用于视频及图像处理中。其中的YUV是三个分量。“Y”表示明亮度(Luminance或Luma),也就是灰度值。“U...

2019-08-10 18:20:26 2068

原创 Android 自动刷新自定义相册

在camera开发过程中,发现若将camera拍摄的相片存放至自定义相册时,有时不能及时的在相册中找到对应相片。不同的设备对于自定义相册的更新时机不同。有的手机,需要重启才会更新,有的则是及时。因此,为了适配,不论什么机型,强制更新是必要的。网上查找,多有两种方案。一是发送系统广播,一是使用MediaScannerConnection对象。对于广播而言,其局限性在于,android4.x之...

2019-07-09 22:58:49 1085

原创 Android亮度自动调节

最近在做人脸识别项目。在抓取人脸时,发现了很多问题。其中旋转角度和光线问题最令人抓狂。Camera拍摄照片可能存在0度/90度/180度/270度的(右侧)旋转,不同设备不同。例如,小米3w,0度;小米8,270度。所以需要获取照片后不能立即使用,需要根据旋转角度,对照片进行处理,以方便人脸位置的获取。关于如何实现,是另一话题,改天再论。光线问题,其实是非常感官的因素。同样的处理代码,同样...

2019-07-09 22:45:58 3665 1

原创 关于Android Camera的曝光补偿(Exposure Compensation)

什么事曝光补偿?曝光补偿是指,通过增加或者减少光线的摄入量,来提高或降低照片的亮度。曝光补偿存在一定范围,比如-2至2,或者-3至3,单位为EV,可以理解为exposure value。每增加或者降低1EV,光线的摄入量便增加或降低1倍。android camera的曝光补偿为阶段性变化,每次变化1/2或1/3,该数量级被称为step。android camera可以通过以下五个A...

2019-06-18 00:13:20 10361 1

原创 关于Android Camera变焦

本文所述Camera,为Camera1,即为android.hardware.camera。其常用变焦方法有5个(1)public boolean isZoomSupported ()(2)public void setZoom (int value)(3)public int getZoom ()(4)public int getMaxZoom ()(5)public Lis...

2019-06-12 20:05:36 2265

原创 constraintLayout注意事项

在16年I/O大会上,google发布了全新的布局-ConstraintLayout,其他布局和ConstraintLayout比起来,根本就没有存在的必要了。ConstraintLayout的出现,改善了Layout嵌套的情况,其可拖拽操作的特性使得布局设计更加方便。但在使用时,遇到两点问题,现记录如下,以便再次落坑。(1)constraintLayout中app:srcCompat设置的图...

2019-06-08 16:54:38 327

原创 "XXXXX" doesn't include the application-identifier and keychain-access-groups entitlements.

前日真机调试,报错如下:Showing All MessagesAutomatic signing is unable to resolve an issue with the "xxxxx" target's entitlements. Automatic signing can't add the application-identifier and keychain-access-...

2019-03-15 10:51:05 5876 2

原创 我在北京的日子(13)

惬意的时光不多,也只能忙里偷闲。似乎这就是步入中年的写照,亦或仍是无病之呻吟,很是讨厌!敏感,一直是个头疼的问题。2019年1月9日,阴冷,立水桥,病假中。记得上一个本命年,还是在研究生。那时意气风发。球场上无拘无束…如今暮然回首,也只剩梦里乐呵了。谁能想到,这仅是一眨眼的事情。18年初,在家人提醒下,换上红色套装,心里不免还是别扭。怎么就三十六了?真TM快。可不等你继续抱怨,时间已经推着你前...

2019-01-10 00:50:17 1157 3

原创 我的人工智能之旅——偏斜类问题

偏斜类问题正样本数占样本总数的比例极小时,容易出现偏斜类问题。例如癌症测试。样本集合中仅有0.5%的癌症样本,99.5%的正常样本。通过某一假设函数后,得到1%为癌症患者,99%为正常样本。虽然总的正确率高达99%,但假设函数并不理想。因为,我们的目的是为了,检测出是否得癌。这时候,如果将99%的准确率提升至99.2%,无疑是一个较大的提升,虽然,在数值上来看,只有0.2%。因此,...

2018-10-16 15:14:54 958

原创 我的人工智能之旅——概率统计基础(更新中)

偏差体现的是,学习算法的期望预测与真实结果的偏离程度。通常出现在欠拟合的情况下。方差体现的是,同样大小的训练集的变动所导致的学习性能的变化。通常出现在过拟合的情况下。训练效果不错,但测试效果不好。数学期望,即平均值。公式为方差是指,每个样本值与全体样本值的平均数之差的平方值的平均数。公式为均方差即为标准差,是方差的算术平方根。公式为均方误差,与均方差一字之差,但却与方差相近,将...

2018-10-12 11:12:02 1063 1

原创 我的人工智能之旅——假设函数模型的选择

如何选择假设函数模型通常假设函数的模型为,其中n为最高次数,那么如何来确定n的取值呢?通常的做法是,(1)确定多个n值,例如,形成多个假设函数(2)将数据集分成三部分,训练集,交叉验证集,测试集,通常所占比例分别为60%,20%,20%。(注意,测试集选定后,不再变动。)(3)使用训练集对不同的假设函数模型进行训练,确定最优参数。(注意,在训练过程中,需要假如正则化惩罚...

2018-10-12 10:12:53 859 1

原创 python3.7 IDE(Eclipse)

下载Eclipse之所以选择Eclipse,而非其他python IDE,是因为Eclipse的包容性,可以适用于Java, c等多种语言,使用方便。下载路径https://www.eclipse.org/downloads/添加python插件Help->Install New Software...->add注意:安装完后,需要重启eclipse。设...

2018-10-10 11:31:27 2217

原创 python3.7安装(Anaconda)

MAC本身自带python,本机版本为2.7。可以进行更新,但网上教程过于啰嗦,因此使用anaconda进行3.7版本的安装。使用anaconda安装python,较手动安装python更为方便。anaconda不仅会自动安装python,而且会设置好环境变量,同时包含很多实用的工具包,例如numpy,不用二次安装。anaconda可以到官网https://www.anaconda.c...

2018-10-10 10:49:32 47265 1

原创 我的人工智能之旅——近邻算法KNN(K-Nearest Neighbor)

在图像识别中,图像分类是首要工作。因为需要将不同类型的图像先进行排除。近邻算法是最简单的算法之一,但由于其弊端的存在,本篇只做了解性的简单介绍,K近邻算法的实质将测试图片在已经分类好的,具有不同标签的训练数据图片中,找到K张最相似的图片,进而根据K张图片中类型的比例大小,推断图片类型。判断图片的相似程度,就需要用到距离算法。我们知道,图片的电子存在形式是多维的矩阵数据,不同的维度代表区域(...

2018-10-09 10:30:49 1041

原创 我的人工智能之旅——神经网络

神经元,neuron神经网络,Neural Networks激活函数,activation function权重,weight输入层,input layer输出层,output layer隐藏层,hidden layer向前传播,forward propagation人工神经网络人工神经网络是一种机器学习算法,兴起于上世纪八九十年代,但由于其本身计算量较大,受制...

2018-08-31 14:39:02 2596

原创 我的人工智能之旅——基本数学基础

1.自然常数自然常数e,为无限不循环小数,数值约为2.71828...,其数学定义为,即。2.幂&指数幂(power),是指乘方运算的结果。是指x个a相乘,称为a的x次幂。其中,a为底数,x为指数。指数运算,也称为幂运算。常用的幂运算公式如下:(1)(2)(3)(4)(5)(6),其中(7),其中3.对数若,其中a>0且a1,则,a...

2018-08-31 14:26:16 3422 1

原创 我的人工智能之旅——微积分基础

1.导数从一元函数图像上看,某一点的导数,即曲线在该点的切线。一个函数在某一点的导数,描述了这个函数在这一点附近的变化率。当函数f(x)的自变量,在一点x上产生了一个增量h,若因变量的增量与自变量h的比值,在h趋于0时的极限如果存在,那该比值即为f(x)在点x处的导数。这里要注意一下几点(1)不是所有的函数都是可导的。(2)可导的函数一定是连续的。(3)不连续的函数...

2018-08-31 14:25:55 6238

原创 我的人工智能之旅——线性代数基础

1.矩阵矩阵,matrix,为m行n列的数据阵列。例如下例,为4x3阶矩阵。2.方阵mxn阶矩阵的m=n时,称为方阵,n阶方阵。3.单位矩阵单位矩阵,是指对角线数据为1,其它数据为0的n阶方阵。4.逆矩阵逆矩阵,matrix inverse。只有方阵才有逆矩阵。n阶矩阵A的逆矩阵,必须满足以下条件其中I为n阶单位矩阵。不是所有的矩阵都有逆矩阵。对...

2018-08-31 14:25:41 2092

原创 我的人工智能之旅——正则化

无论线性回归,还是逻辑回归,都需要对假设函数进行设定。而假设函数的设定,将影响到预测结果的准确性。因此,如何判断假设函数是否合适,以及如何修改假设函数将变得十分重要。本文,我们将记录假设函数的正则化。在记录的过程当中,将涉及以下概念。(1)过度拟合,overfitting(2)欠拟合,underfitting(3)正则化,regularization(4)惩罚项(或正则化项),pe...

2018-08-31 14:25:13 936

原创 我的人工智能之旅——梯度下降vs正规方程法

本文将涉及以下知识点(1)特征缩放(2)均值归一化(3)正规方程优化梯度下降算法在上一篇博文中,我们了解了梯度下降算法,它为解决线性回归问题提供了思路。但梯度下降的迭代推算过程,较为耗时。简单地说,整个算法是一个不断尝试收敛的过程。如果能够降低算法的尝试次数,以及每次迭代的算法复杂度,那么,便能更高效的解决线性回归问题。影响梯度下降算法收敛速度的因素很多,例如样本集合大小,...

2018-08-31 14:23:39 1857

原创 我的人工智能之旅——逻辑回归

本文,将涉及以下知识点,(1)决策边界,decision boundary(2)凸函数,convex function(3)非凸函数,non convex function此前所讨论的问题,都为线性回归问题。本文将介绍逻辑回归算法,该算法为分类问题提出解决方案。正文如下逻辑回归逻辑回归,logistic regression,由于历史问题,算法名称中包含“回归”字样,但其解...

2018-08-31 14:21:00 1320

原创 我的人工智能之旅——线性回归

本文将涉及以下知识点(1)线性关系(2)线性回归(3)假设函数(4)代价函数(5)学习速率(6)梯度下降(7)特征向量相关的线性代数或微积分知识,可参照另两篇博文我的人工智能之旅----线性代数基础知识我的人工智能之旅----微积分基础知识以下是正文。线性关系解释线性回归之前,先来看一下线性关系。什么是线性关系?如果自变量与因变量存在一次方函...

2018-08-31 14:20:39 5572 1

原创 我的人工智能之旅——引子

人工智能不想人云亦云,于是来刨别家祖坟,一探究竟。人工智能,一个热得不知所措的话题。就跟当年的“云”一样,聊得臭大街了,但什么是云?就想把你绕晕,其实都在云里雾里。人工智能,artificial intelligence,缩写AI。由于命名的开放性,使得其定义轮廓较为模糊。简单来说,它是计算机学科的分支之一,是使用计算机模拟和学习人类思维过程和智能行为的学科。人工智能已经存在人们身边很...

2018-08-31 14:19:31 464

转载 LaTeX详解

函数、符号及特殊字符声调语法效果语法效果语法效果\bar{x}latex数学符号表(2)” style=”border:none; max-width:100%”>\acute{\eta}latex数学符号表(2)” style=”border:none...

2018-07-20 15:05:10 4708

原创 ECC签名格式

之前进行ECC的签名验证,发现签名的长度总是不同,查了不少资料才找到相应格式。签名格式为TLV嵌套格式,签名的主体分为R和S两部分。R(或S)的长度等于ECC私钥长度。R(或S)前的T为0x02,签名T为0x30。总体格式如下:30 + LEN1 + 02 + LEN2 + 00 (optional) + r + 02 + LEN3 + 00(optional) + s当r或s的第1字...

2018-07-16 22:28:45 5879 1

原创 基于蓝牙适配器的PC与Android端通讯

首先,直接给Demo,对于只想使用的朋友,直接下载使用即可。Demo效果如下。(1)PC端(2)Android端接下来,我们看一下实现。(1)Android端(2)PC端吐槽适配器适配器的性能也是参差不齐。此前摁着绿联的蓝牙适配器,试了3天。同样的代码,问题百出。后来转用奥视通(ost108),几分钟便过了。不管是添加设备时的认证过程的人性化设计,还是设备服务驱动的安装速度,天壤之别~...

2018-07-06 19:24:21 5262 17

原创 Python3学习笔记:文件

目录操作os模块提供了很多方法来完成常见的目录操作。本节我们介绍几个常用方法。至于其他方法,可以通过dir(),help()了解。示例为目录的创建和删除操作。import osdirname=os.path.abspath('.')+'\\txt\\' if not os.path.exists(dirname): os.makedirs(dirname) print("c...

2018-06-27 17:25:56 366

原创 Python3学习笔记:包

若目录下存在__init__.py,则该目录被python视为一个包(package)。__init__.py也是一个模块,可以编写代码。但其主要功能是定义__all__。当执行from packageName import *时,仅导入__all__所指定的内容。__all__默认为package下所有模块,但不包括子package。例如,目录结构为在P1下的__init__.py中,重新定义_...

2018-06-26 13:06:33 333

原创 Python3学习笔记:模块

Python代码通常以.py文件形式保存。而每个.py文件都可以看作是一个模块。当一个模块调用另一个模块时,便需要import语句。在此前的章节中,我们以看到import语句的使用。若在同一package下,则只需要调用import moduleName即可。否则需要使用from package.moduleName import moduleName。...

2018-06-25 23:56:09 548

基于蓝牙的PC与Android端通讯DEMO

通过蓝牙适配器,建立PC与Android端的通讯。PC端作为服务端,使用bluecove bit64包。android端作为客户端,使用BluetoothSocket。

2018-07-06

AES 加密工具(ECB,CBC,CMAC)

AES工具,支持ECB,CBC加解密运算,以及CMAC运算。支持多种PADDING

2018-06-25

microsoft visual c++ 14.0

Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools"这类错误一般出现在windows环境下,因为windows环境下没有默认安装c的环境。只要安装了c的环境,就可以解决下载第三方包出现这个问题的提示

2018-06-25

ViewPager Demo

使用ViewPager实现Fragment的左右滑动切换。Tab字体颜色随切换变化

2017-10-20

Java文件结构解析工具

一个简单的分析工具,用于分析”.class/.cap/.exp”格式的Java文件。 对于CAP文件,支持version 2.1 and 2.2. 适用于JCVM的学习。 使用工具时,需保证“C:\Program Files\WinZip\WINZIP32.EXE”存在,用于解压CAP文件。 解压后,将后缀名改为“.exe”即可使用。

2014-02-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除