ORL Faces Database介紹
ORL人臉資料集共包含40個不同人的400張影像,是在1992年4月至1994年4月期間由英國劍橋的Olivetti研究實驗室建立。
此資料集下包含40個目錄,每個目錄下有10張影像,每個目錄表示一個不同的人。所有的影像是以PGM格式儲存,灰度圖,影像大小寬度為92,高度為112。對每一個目錄下的影像,這些影像是在不同的時間、不同的光照、不同的面部表情(睜眼/閉眼,微笑/不微笑)和麵部細節(戴眼鏡/不戴眼鏡)環境下采集的。所有的影像是在較暗的均勻背景下拍攝的,拍攝的是正臉(有些帶有略微的側偏)。
可以從http://www.cl.cam.ac.uk/research/dtg/attarchive/facedatabase.html下載此人臉資料集。
測試程式碼如下:
#include "funset.hpp"
#include <iostream>
#include <fstream>
#include <vector>
#include <opencv2/opencv.hpp>
int ORLFacestoImage()
{
const std::string path{ "E:/GitCode/NN_Test/data/database/ORL_Faces/" };
cv::Mat dst;
int height, width;
for (int i = 1; i <= 40; ++i) {
std::string directory = path + "s" + std::to_string(i) + "/";
for (int j = 1; j <= 10; ++j) {
std::string image_name = directory + std::to_string(j) + ".pgm";
cv::Mat mat = cv::imread(image_name, 0);
if (!mat.data) {
fprintf(stderr, "read image fail: %s\n", image_name.c_str());
}
//std::string save_image_name = directory + std::to_string(j) + ".png";
//cv::imwrite(save_image_name, mat);
if (i == 1 && j == 1) {
height = mat.rows;
width = mat.cols;
dst = cv::Mat(height * 20, width * 20, CV_8UC1);
}
int y_start = (i - 1) / 2 * height;
int y_end = y_start + height;
int x_start = (i - 1) % 2 * 10 * width + (j - 1) * width;
int x_end = x_start + width;
cv::Mat copy = dst(cv::Range(y_start, y_end), cv::Range(x_start, x_end));
mat.copyTo(copy);
}
}
int new_width = 750;
float factor = dst.cols * 1.f / new_width;
int new_height = dst.rows / factor;
cv::resize(dst, dst, cv::Size(new_width, new_height));
cv::imwrite("E:/GitCode/NN_Test/data/orl_faces_dataset.png", dst);
return 0;
}
執行結果如下:相關文章
- 關於Oracle Database Vault介紹OracleDatabase
- Oracle database 補丁知識介紹OracleDatabase
- springboot_database專案介紹Spring BootDatabase
- 應用oracle flashback--Flashback Database介紹OracleDatabase
- Laravel核心程式碼學習 -- Database 基礎介紹LaravelDatabase
- recover database skip [forever] tablespace XXX 的用法介紹Database
- JavaServer Faces Note(1)JavaServer
- JavaServer Faces Note(2)JavaServer
- ADF FACES 佈局
- 【kingsql分享】Oracle Database 19c的各種新特性介紹SQLOracleDatabase
- Oracle NOSQL DATABASE簡介OracleSQLDatabase
- 【kingsql分享】Oracle Database 20c 十大新特性介紹SQLOracleDatabase
- 介紹
- Tomcat DBCP(Database Connection Pool) 資料庫連線池入門介紹TomcatDatabase資料庫
- LAMP架構介紹、MYSQL介紹、安裝LAMP架構MySql
- 企業管理器(OEM)介紹: Grid Control 和 Database ControlDatabase
- php介紹PHP
- CSRedisCore 介紹Redis
- BitMap介紹
- GeoServer介紹Server
- RabbitMQ 介紹MQ
- 模式介紹模式
- Pyzmq介紹MQ
- Java介紹Java
- css介紹CSS
- kafka介紹Kafka
- 【RESTEasy 介紹】REST
- Kafka 介紹Kafka
- PostgreSQLHooK介紹SQLHook
- nginx介紹Nginx
- 埠介紹
- MongoDB介紹MongoDB
- docker 介紹Docker
- TypeScript介紹TypeScript
- Smbclient介紹client
- JVM 介紹JVM
- Spark介紹Spark
- MQT介紹MQQT