若单纯从技术层面看,区块链是一种技术,但从技术实现的理念和思想来看,区块链是一种“信任机器”,如果是单纯的技术人员进行技术层面上的探讨,普通人对这种技术逻辑基本看不懂,需要花费大量的精力对相关底层技术进行了解,各种底层技术和概念又环环相扣,这是了解区块链技术极其用途的难点所在。
想要理解“区块链”就要弄明白它和“去中心化”之间的关系,通过区块链技术结合现实生活中的“现象”进行相互反推,把区块链技术和这种技术解决问题的思想相结合,这样既能明白区块链技术的独特性,也能深刻了解、判断区块链技术理念和思想在现实生活中能否成功应用的合理性,让自己的理解更趋于客观。
cv::Mat img_resized;
cv::resize(img_src,img_resized,inputSize_);
uint8_t*data_ptr=GetImage(img_resized);
pretreat_data_->convert(data_ptr,inputSize_.width,inputSize_.height,0,input_tensor_);
mobilenetssd_interpreter_->runSession(mobilenetssd_sess_);
std::string output_name="detection_out";
MNN::Tensor*output_tensor=mobilenetssd_interpreter_->getSessionOutput(mobilenetssd_sess_,output_name.c_str());
//copy to host
MNN::Tensor output_host(output_tensor,output_tensor->getDimensionType());
output_tensor->copyToHostTensor(&output_host);
通俗来说,所谓去中心化,其实是分布式成长的结果。我们可以把整个世界想象成由无数个个体构成,最初的时候,他们之间并为“联网”……于是,为了沟通,为了效率,会有一个大的中心形成,于是,最初出现的是“有一个中心的星状网络”。随着世界的推移,很多原本没有关联的个体之间逐渐联系起来,于是,一个分布式网络逐渐成长起来,在这个过程中,某个体逐渐成为了“又一个中心”,而这样的小中心不断浮现的结果,就是所谓的“去中心化”了。
float exp_sum=0.0f;
for(int i=0;i<2;++i)
{
float val=scores_dataPtr<i>;
exp_sum+=val;
}
//get result idx
int idx=0;
float max_prob=-10.0f;
for(int i=0;i<2;++i)
{
在一个网络系统中,或者是社会生态中,一个个节点分布在系统中,每个节点都具有高度自治的特征。节点之间彼此可以自由连接,形成新的连接单元。任何一个节点都可能成为阶段性的中心,但不具备强制性的中心控制功能。节点与节点之间的影响,会通过网络而形成非线性因果关系。这种开放式、扁平化、平等性的系统现象或结构,就是去中心化系统。
float val=scores_dataPtr<i>;
float prob=val/exp_sum;
if(prob>max_prob)
{
max_prob=prob;
idx=i;
}
}
printf("output belong to class:%dn",idx);