datum در واقع کلاسی مشتق شده از کلاس Message مربوط به google::protobuf هستش که از آن برای ذخیره سازی داده به همراه یک برچسب استفاده میشه .به این صورت تصویر کنید که این کلاس یک ماتریس 3 بعدیه که دارای طول و عرض و تعداد کانال است.
Datum معمولا در لایه داده استفاده میشه که به صورت یک آبجکت میانی نگهداری داده و برچسب را برعهده دارد.
استفاده آن تو c++ هم به صورت زیر هستش:
Datum my_datum;
my_datum.set_width(4);
my_datum.set_height(1);
my_datum.set_channels(1);
google::protobuf::RepeatedField<float>* datum_data = my_datum.mutable_float_data();
datum_data->Add(0.0f);
datum_data->Add(1.0f);
datum_data->Add(0.0f);
datum_data->Add(1.0f);
char label;
my_datum.set_label(label);
//or
datum.set_channels(1);
datum.set_height(rows);
datum.set_width(cols);
char* pixels = new char[rows * cols];
my_datum.set_data(pixels, rows*cols);
char label;
my_datum.set_label(label);