Scénario de test & Cas d'usage
Procesamiento, manipulación y análisis de imágenes.
Descubrir todas las acciones de imageSimulación de un lote grande de 100 parches de terreno (10x10 píxeles, 3 canales RGB) con una marca de tiempo.
| 1 | |
| 2 | DATA casuser.sat_pixels; |
| 3 | LENGTH patch_id $20 capture_date $20; |
| 4 | capture_date='2023-12-01'; |
| 5 | DO i=1 to 100; |
| 6 | patch_id=cats('patch_', i); |
| 7 | /* Formato planar: RRR...GGG...BBB... */ DO chan=0 to 2; |
| 8 | DO r=0 to 9; |
| 9 | DO c=0 to 9; |
| 10 | _value_ = rand('integer', 0, 255); |
| 11 | OUTPUT; |
| 12 | END; |
| 13 | END; |
| 14 | END; |
| 15 | END; |
| 16 | |
| 17 | RUN; |
| 18 |
| 1 | |
| 2 | PROC CAS; |
| 3 | image.condenseImages / TABLE={name='sat_pixels', groupBy={'patch_id'}}, inputs={{name='_value_'}}, width=10, height=10, numberOfChannels=3, groupedChannels=true, copyVars={'capture_date'}, casOut={name='satellite_images', replace=true}; |
| 4 | |
| 5 | RUN; |
| 6 |
| 1 | |
| 2 | PROC CAS; |
| 3 | TABLE.fetch / TABLE='satellite_images' to=5 fetchVars={'patch_id', 'capture_date'}; |
| 4 | |
| 5 | RUN; |
| 6 |
La acción debe procesar el lote rápidamente. La tabla de salida debe contener las imágenes en color reconstruidas y, crucialmente, la columna 'capture_date' debe estar presente y poblada en todas las filas.