dieu chinh resize anh khi dong bo
This commit is contained in:
parent
999df32e09
commit
492651570e
|
@ -112,17 +112,27 @@ class ListManagementController extends Controller {
|
||||||
return ["status" => false, "text" => "Mỗi đối tượng chỉ nhận tối đa " . \Yii::$app->params['maxPicture'] . " hình ảnh mẫu"];
|
return ["status" => false, "text" => "Mỗi đối tượng chỉ nhận tối đa " . \Yii::$app->params['maxPicture'] . " hình ảnh mẫu"];
|
||||||
$add = true;
|
$add = true;
|
||||||
foreach ($images as $key => $value) {
|
foreach ($images as $key => $value) {
|
||||||
if ($value['url'] === $url)
|
if ($value['urlOld'] === $url)
|
||||||
$add = false;
|
$add = false;
|
||||||
}
|
}
|
||||||
if ($add) {
|
if ($add) {
|
||||||
|
$RootFolder = Yii::getAlias('@webroot') . "/data/uploads";
|
||||||
|
$targetPath = $RootFolder . "/face";
|
||||||
|
FileHelper::createDirectory($targetPath, 0777);
|
||||||
|
$fileName = "face_" . common::generateRandomString() . "_" . time() . ".png";
|
||||||
|
$img = file_get_contents("http://localhost/data/uploads/face/" . $url);
|
||||||
|
$fileTarget = $targetPath . "/" . $fileName;
|
||||||
|
if (!$this->resizeImg($img, $fileTarget))
|
||||||
|
$fileName = $url;
|
||||||
|
|
||||||
$features = json_decode(common::requestToEngine("/get-feature", [
|
$features = json_decode(common::requestToEngine("/get-feature", [
|
||||||
"image_paths" => [
|
"image_paths" => [
|
||||||
["url" => "/var/www/html/BiFace_Server_Lite/web/data/uploads/face/" . $url, "type" => "raw"]
|
["url" => "/var/www/html/BiFace_Server_Lite/web/data/uploads/face/" . $fileName, "type" => "raw"]
|
||||||
]
|
]
|
||||||
]), true);
|
]), true);
|
||||||
$images[] = [
|
$images[] = [
|
||||||
"url" => $url,
|
"url" => $fileName,
|
||||||
|
"urlOld" => $url,
|
||||||
"features" => $features['results'][0]['feature'],
|
"features" => $features['results'][0]['feature'],
|
||||||
"features512" => isset($features['results'][0]['feature512']) ? $features['results'][0]['feature512'] : []
|
"features512" => isset($features['results'][0]['feature512']) ? $features['results'][0]['feature512'] : []
|
||||||
];
|
];
|
||||||
|
@ -139,14 +149,24 @@ class ListManagementController extends Controller {
|
||||||
}
|
}
|
||||||
return ["status" => false, "text" => "Hình ảnh này đã được chọn làm mẫu cho đối tượng này!"];
|
return ["status" => false, "text" => "Hình ảnh này đã được chọn làm mẫu cho đối tượng này!"];
|
||||||
} else {
|
} else {
|
||||||
|
$RootFolder = Yii::getAlias('@webroot') . "/data/uploads";
|
||||||
|
$targetPath = $RootFolder . "/face";
|
||||||
|
FileHelper::createDirectory($targetPath, 0777);
|
||||||
|
$fileName = "face_" . common::generateRandomString() . "_" . time() . ".png";
|
||||||
|
$img = file_get_contents("http://localhost/data/uploads/face/" . $url);
|
||||||
|
$fileTarget = $targetPath . "/" . $fileName;
|
||||||
|
if (!$this->resizeImg($img, $fileTarget))
|
||||||
|
$fileName = $url;
|
||||||
|
|
||||||
$features = json_decode(common::requestToEngine("/get-feature", [
|
$features = json_decode(common::requestToEngine("/get-feature", [
|
||||||
"image_paths" => [
|
"image_paths" => [
|
||||||
["url" => "/var/www/html/BiFace_Server_Lite/web/data/uploads/face/" . $url, "type" => "raw"]
|
["url" => "/var/www/html/BiFace_Server_Lite/web/data/uploads/face/" . $fileName, "type" => "raw"]
|
||||||
]
|
]
|
||||||
]), true);
|
]), true);
|
||||||
$data['image'] = json_encode([
|
$data['image'] = json_encode([
|
||||||
[
|
[
|
||||||
"url" => $url,
|
"url" => $fileName,
|
||||||
|
"urlOld" => $url,
|
||||||
"features" => $features['results'][0]['feature'],
|
"features" => $features['results'][0]['feature'],
|
||||||
"features512" => isset($features['results'][0]['feature512']) ? $features['results'][0]['feature512'] : []
|
"features512" => isset($features['results'][0]['feature512']) ? $features['results'][0]['feature512'] : []
|
||||||
]
|
]
|
||||||
|
@ -186,14 +206,24 @@ class ListManagementController extends Controller {
|
||||||
if ($check && $check->id != $model->id)
|
if ($check && $check->id != $model->id)
|
||||||
return false;
|
return false;
|
||||||
if ($data['image'] !== "") {
|
if ($data['image'] !== "") {
|
||||||
|
$RootFolder = Yii::getAlias('@webroot') . "/data/uploads";
|
||||||
|
$targetPath = $RootFolder . "/face";
|
||||||
|
FileHelper::createDirectory($targetPath, 0777);
|
||||||
|
$fileName = "face_" . common::generateRandomString() . "_" . time() . ".png";
|
||||||
|
$img = file_get_contents("http://localhost/data/uploads/face/" . $data['image']);
|
||||||
|
$fileTarget = $targetPath . "/" . $fileName;
|
||||||
|
if (!$this->resizeImg($img, $fileTarget))
|
||||||
|
$fileName = $data['image'];
|
||||||
|
|
||||||
$features = json_decode(common::requestToEngine("/get-feature", [
|
$features = json_decode(common::requestToEngine("/get-feature", [
|
||||||
"image_paths" => [
|
"image_paths" => [
|
||||||
["url" => "/var/www/html/BiFace_Server_Lite/web/data/uploads/face/" . $data['image'], "type" => "raw"]
|
["url" => "/var/www/html/BiFace_Server_Lite/web/data/uploads/face/" . $fileName, "type" => "raw"]
|
||||||
]
|
]
|
||||||
]), true);
|
]), true);
|
||||||
$images = json_decode($model->image, true);
|
$images = json_decode($model->image, true);
|
||||||
$images[] = [
|
$images[] = [
|
||||||
"url" => $data['image'],
|
"url" => $fileName,
|
||||||
|
"urlOld" => $data['image'],
|
||||||
"features" => $features['results'][0]['feature'],
|
"features" => $features['results'][0]['feature'],
|
||||||
"features512" => isset($features['results'][0]['feature512']) ? $features['results'][0]['feature512'] : []
|
"features512" => isset($features['results'][0]['feature512']) ? $features['results'][0]['feature512'] : []
|
||||||
];
|
];
|
||||||
|
@ -235,6 +265,9 @@ class ListManagementController extends Controller {
|
||||||
foreach ($images as $key => $value) {
|
foreach ($images as $key => $value) {
|
||||||
if ($value['url'] !== $data['image'])
|
if ($value['url'] !== $data['image'])
|
||||||
$features[] = $value;
|
$features[] = $value;
|
||||||
|
else {
|
||||||
|
unlink("/var/www/html/BiFace_Server_Lite/web/data/uploads/face/" . $value['url']);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
$model->image = json_encode($features);
|
$model->image = json_encode($features);
|
||||||
$model->save();
|
$model->save();
|
||||||
|
@ -377,22 +410,13 @@ class ListManagementController extends Controller {
|
||||||
FileHelper::createDirectory($targetPath, 0777);
|
FileHelper::createDirectory($targetPath, 0777);
|
||||||
foreach ($data['images'] as $key => $value) {
|
foreach ($data['images'] as $key => $value) {
|
||||||
if ($key < Yii::$app->params['maxPicture']) {
|
if ($key < Yii::$app->params['maxPicture']) {
|
||||||
$key = common::generateRandomString();
|
$fileName = "face_" . common::generateRandomString() . "_" . time() . ".png";
|
||||||
$fileName = "face_" . $key . "_" . time() . ".png";
|
|
||||||
$img = file_get_contents($value);
|
$img = file_get_contents($value);
|
||||||
if ($img !== "null") {
|
if ($img !== "null") {
|
||||||
$im = imagecreatefromstring($img);
|
|
||||||
$width = imagesx($im);
|
|
||||||
$height = imagesy($im);
|
|
||||||
$newwidth = 224;
|
|
||||||
$newheight = 224;
|
|
||||||
$thumb = imagecreatetruecolor($newwidth, $newheight);
|
|
||||||
imagecopyresized($thumb, $im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
|
|
||||||
$fileTarget = $targetPath . "/" . $fileName;
|
$fileTarget = $targetPath . "/" . $fileName;
|
||||||
imagejpeg($thumb, $fileTarget);
|
if (!$this->resizeImg($img, $fileTarget)) {
|
||||||
imagedestroy($thumb);
|
file_put_contents($fileTarget, $img);
|
||||||
imagedestroy($im);
|
}
|
||||||
// file_put_contents($fileTarget, $img);
|
|
||||||
$features = json_decode(common::requestToEngine("/get-feature", [
|
$features = json_decode(common::requestToEngine("/get-feature", [
|
||||||
"image_paths" => [
|
"image_paths" => [
|
||||||
["url" => "/var/www/html/BiFace_Server_Lite/web/data/uploads/face/" . $fileName, "type" => "raw"]
|
["url" => "/var/www/html/BiFace_Server_Lite/web/data/uploads/face/" . $fileName, "type" => "raw"]
|
||||||
|
@ -400,6 +424,7 @@ class ListManagementController extends Controller {
|
||||||
]), true);
|
]), true);
|
||||||
$ft[] = [
|
$ft[] = [
|
||||||
"url" => $fileName,
|
"url" => $fileName,
|
||||||
|
"urlOld" => $fileName,
|
||||||
"features" => $features['results'][0]['feature'],
|
"features" => $features['results'][0]['feature'],
|
||||||
"features512" => isset($features['results'][0]['feature512']) ? $features['results'][0]['feature512'] : []
|
"features512" => isset($features['results'][0]['feature512']) ? $features['results'][0]['feature512'] : []
|
||||||
];
|
];
|
||||||
|
@ -453,6 +478,7 @@ class ListManagementController extends Controller {
|
||||||
file_put_contents($targetPath . "/" . $fileName, base64_decode($v['url']));
|
file_put_contents($targetPath . "/" . $fileName, base64_decode($v['url']));
|
||||||
$images[] = [
|
$images[] = [
|
||||||
"url" => $fileName,
|
"url" => $fileName,
|
||||||
|
"urlOld" => $fileName,
|
||||||
"features" => $v['features'],
|
"features" => $v['features'],
|
||||||
"features512" => isset($v['features512']) ? $v['features512'] : []
|
"features512" => isset($v['features512']) ? $v['features512'] : []
|
||||||
];
|
];
|
||||||
|
@ -563,4 +589,21 @@ class ListManagementController extends Controller {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function resizeImg($img, $fileTarget) {
|
||||||
|
$im = imagecreatefromstring($img);
|
||||||
|
$width = imagesx($im);
|
||||||
|
$height = imagesy($im);
|
||||||
|
$newwidth = 224;
|
||||||
|
$newheight = 224;
|
||||||
|
if ($width > $newwidth && $height > $newheight) {
|
||||||
|
$thumb = imagecreatetruecolor($newwidth, $newheight);
|
||||||
|
imagecopyresized($thumb, $im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
|
||||||
|
imagejpeg($thumb, $fileTarget);
|
||||||
|
imagedestroy($thumb);
|
||||||
|
imagedestroy($im);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user