Exctract event's images ok
This commit is contained in:
parent
e977ef04c8
commit
84ee33f718
|
@ -159,8 +159,10 @@
|
||||||
/* [3] For each day -> get events
|
/* [3] For each day -> get events
|
||||||
=========================================================*/ {
|
=========================================================*/ {
|
||||||
|
|
||||||
|
$uid = 0;
|
||||||
|
|
||||||
/* (1) For each day */
|
/* (1) For each day */
|
||||||
for( $day_n = 0 ; $day_n <= count($col_ind) ; $day_n++ ){
|
for( $day_n = 0 ; $day_n < count($col_ind)-1 ; $day_n++ ){
|
||||||
$col_x = $col_ind[$day_n];
|
$col_x = $col_ind[$day_n];
|
||||||
|
|
||||||
|
|
||||||
|
@ -179,23 +181,23 @@
|
||||||
$start_y = $y;
|
$start_y = $y;
|
||||||
$time = $this->yToTime($day_n, $start_y);
|
$time = $this->yToTime($day_n, $start_y);
|
||||||
|
|
||||||
// {2} Store default event name if not already set //
|
// {2} Incr uid //
|
||||||
if( !isset($d_db[$p1e]) )
|
$uid++;
|
||||||
$d_db[$p1e] = $p1e;
|
|
||||||
|
|
||||||
// {3} Store event start //
|
// {3} Store event start //
|
||||||
$this->event[$p1e][$time] = [];
|
$this->event[$uid][$time] = [];
|
||||||
|
|
||||||
// {4} Seek end of event //
|
// {4} Seek end of event //
|
||||||
$y++;
|
$y++;
|
||||||
while( $y < self::$stop_y && $this->getColor($col_x, $y) != 0 )
|
while( $y < self::$stop_y && $this->getColor($col_x, $y) != 0 )
|
||||||
$y++;
|
$y++;
|
||||||
|
|
||||||
|
|
||||||
// {5} If end reached //
|
// {5} If end reached //
|
||||||
$this->event[$p1e][$time] = $this->yToTime($day_n, $y);
|
$this->event[$uid][$time] = $this->yToTime($day_n, $y);
|
||||||
|
|
||||||
// {6} Exctract event's image //
|
// {6} Exctract event's image //
|
||||||
$this->extractEvent([$col_x, $start_y+1], [$col_ind[$day_n+1]-1, $y]);
|
$this->extractEvent("$time-$uid", [$col_x, $start_y+1], [$col_ind[$day_n+1]-1, $y]);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -228,12 +230,44 @@
|
||||||
|
|
||||||
/* (3) Exctracts an event
|
/* (3) Exctracts an event
|
||||||
*
|
*
|
||||||
|
* @uid<String> Image uid
|
||||||
* @start<Array> Start rect (x, y)
|
* @start<Array> Start rect (x, y)
|
||||||
* @stop<Array> Stop rect (x, y)
|
* @stop<Array> Stop rect (x, y)
|
||||||
*
|
*
|
||||||
---------------------------------------------------------*/
|
---------------------------------------------------------*/
|
||||||
public function extractEvent($start=null, $stop=null){
|
public function extractEvent($uid, $start=null, $stop=null){
|
||||||
var_dump("from (${start[0]}, ${start[1]}) to (${stop[0]}, ${stop[1]})");
|
/* [1] Get the right clip
|
||||||
|
=========================================================*/
|
||||||
|
/* (1) Create clipped copy */
|
||||||
|
$clip = \imagecreatetruecolor($stop[0]-$start[0], $stop[1]-$start[1]);
|
||||||
|
|
||||||
|
$copied = \imagecopyresized(
|
||||||
|
$clip, // destin img
|
||||||
|
$this->img_res, // source img
|
||||||
|
0, // dest x
|
||||||
|
0, // dest y
|
||||||
|
$start[0], // src x
|
||||||
|
$start[1], // src y
|
||||||
|
$stop[0]-$start[0], // dest w
|
||||||
|
$stop[1]-$start[1], // dest h
|
||||||
|
$stop[0]-$start[0], // src w
|
||||||
|
$stop[1]-$start[1] // src h
|
||||||
|
);
|
||||||
|
|
||||||
|
/* (2) Manage copy error */
|
||||||
|
if( !$copied )
|
||||||
|
throw new \Exception("Cannot clip image");
|
||||||
|
|
||||||
|
/* (3) Save to file */
|
||||||
|
\imagesavealpha($clip, true);
|
||||||
|
if( !\imagejpeg($clip, __ROOT__."/tmp/$uid.jpeg") )
|
||||||
|
throw new \Exception("Cannot save image");
|
||||||
|
|
||||||
|
|
||||||
|
/* [2] Process OCR
|
||||||
|
=========================================================*/
|
||||||
|
// TODO:
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -347,6 +381,9 @@
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
foreach($this->event as $event_col=>$events){
|
foreach($this->event as $event_col=>$events){
|
||||||
|
|
||||||
|
$type = "unknown";
|
||||||
|
|
||||||
|
if( isset($col_assoc[$event_col]) )
|
||||||
$type = $col_assoc[$event_col];
|
$type = $col_assoc[$event_col];
|
||||||
|
|
||||||
/* (2) For each event of each type
|
/* (2) For each event of each type
|
||||||
|
|
Loading…
Reference in New Issue