Y Y Y Y
Y Y Y Y
V U V U
V U V U
什么是Bgr24
Bgr24:Bgr24像素格式是一种采用24BPP的sRGB格式。每个颜色通道(蓝色blue, 绿色green, 红色red)各占8BPP(位/像素)。
====================================================================
1.app
的build.gradle
中新增代码:
compile ‘com.guo.android_extend:android-extend:1.0.5’
2.FaceServer.java
中新增代码:
…
public static List faceImgRegisterInfoList;
…
//特征
private static List MyfaceFeatureRegisterInfoList;
//导入手机里的10000个人脸图片
public static List MyimportFaceImgRegisterInfo;
//导入手机里的10000个特征
public static List MyimportFaceFeatureRegisterInfo;
…
//获取图片和姓名的信息
public int getImgAndName(Context context){
synchronized (this){
if (ROOT_PATH == null) {
ROOT_PATH = context.getFilesDir().getAbsolutePath();
}
File imgDir = new File(ROOT_PATH + File.separator + SAVE_IMG_DIR);
if (!imgDir.exists() || !imgDir.isDirectory()) {
return 0;
}
File[] imgFiles = imgDir.listFiles();
if (imgFiles == null || imgFiles.length == 0) {
return 0;
}
faceImgRegisterInfoList = new ArrayList<>();
for (File imgFile : imgFiles) {
faceImgRegist
erInfoList.add(new FaceImgRegisterInfo(imgFile.getPath(), getName(imgFile.getName())));
}
return faceImgRegisterInfoList.size();
}
}
private String getName(String path){
int start= path.lastIndexOf("😊;
int end = path.lastIndexOf(".");
return path.substring(start+1,end);
}
3.activity_face_manage.xml
中新增代码:
<com.guo.android_extend.widget.HListView
android:id="@+id/hlistView"
android:layout_width=“wrap_content”
android:layout_height=“100dp”
android:layout_alignParentBottom=“true”
android:layout_centerHorizontal=“true”
android:scrollbars=“none”
app:dividerHeight=“1dp”
app:listSelector="@android:drawable/list_selector_background"
android:layout_gravity=“center_horizontal”/>
<TextView
android:id="@+id/tv_number"
android:layout_width=“wrap_content”
android:layout_height=“wrap_content”
android:layout_gravity=“center_horizontal”
android:textSize=“30dp”
android:textColor="#000000"/>
4.FaceManageActivity.java
中新增代码:
…
private HListView mHListView;
public RegisterViewAdapter mRegisterViewAdapter;
…
mHListView = (HListView) findViewById(R.id.hlistView);
TextView facenum = (TextView) findViewById(R.id.tv_number);
downFile();
mRegisterViewAdapter = new RegisterViewAdapter(FaceManageActivity.this);
mHListView.setAdapter(mRegisterViewAdapter);
…
private void downFile()
{
int faceNum = FaceServer.getInstance().getFaceNumber(this);
if (faceNum == 0) {
showToast(getString(R.string.batch_process_no_face_need_to_delete));
}else {
FaceServer.getInstance().getImgAndName(this);
}
}
…
class Holder {
ExtImageView siv;
TextView tv;
}
class RegisterViewAdapter extends BaseAdapter {
Context mContext;
LayoutInflater mLInflater;
public RegisterViewAdapter(Context c) {
mContext = c;
mLInflater = LayoutInflater.from(mContext);
}
@Over