1
(リモートクラスタにデプロイされた)apache stormに対する複雑なオブジェクト(opencv:Mat)をシリアル化する必要があります。誰も私に良いチュートリアルカスタムkryoシリアル化を提案するか、これを行う方法の解決策を提案できますか? ありがとうございます!kryo serialization over storm
(リモートクラスタにデプロイされた)apache stormに対する複雑なオブジェクト(opencv:Mat)をシリアル化する必要があります。誰も私に良いチュートリアルカスタムkryoシリアル化を提案するか、これを行う方法の解決策を提案できますか? ありがとうございます!kryo serialization over storm
私はこの問題を解決しました。
を必要に応じて気軽に私はその後、私は次のようにシリアライザを作成した豆に
public class DataBean{
Mat imageMatrix;
int id;
public DataBean(){
}
public DataBean(int id, Mat matrix) {
setId(id);
setImageMatrix(matrix);
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public Mat getImageMatrix() {
return imageMatrix;
}
public void setImageMatrix(Mat matrix)
{
this.imageMatrix=matrix;
}
}
を作成しました:
public class DataBeankryo extends Serializer<DataBean> implements Serializable{
@Override
public DataBean read(Kryo arg0, Input arg1, Class<DataBean> arg2) {
DataBean bean=new DataBean();
bean.setId(arg1.readInt());
bean.setImageMatrix(arg0.readObject(arg1,org.opencv.core.Mat.class));
return bean;
}
@Override
public void write(Kryo arg0, Output output, DataBean bean) {
//arg0.register(org.opencv.core.Mat.class);
output.writeInt(bean.getId());
arg0.writeObject(output,bean.getImageMatrix(),arg0.getSerializer(org.opencv.core.Mat.class));
//arg0.writeClassAndObject(output, bean);
output.close(); }}
私は、これはあなたを助けることを願って!
私は、OpenCV MatをKryoでシリアル化する方法も探しています。Apache StormではなくAkka Remotingですが、シリアライザの外観はどうですか? – Toaditoad