问答题 [说明]
以下是某图像二元树存储与还原算法的主要思想描述。
设一幅2n×2n的二值图像,以:“1”表示黑像素点,以“0”表示白像素点。图像二元树结构表示依赖于图像的二元分割,即交替在X轴方向和Y轴方向上分割。先进行水平分割,分成两个2n-1×2n图像子块,然后进行垂直分割,分成4个2n-1×2n-1的正方形块,如此分割,直到子块只含同一像素点为止。如图8-8为一“E”字的二值图像,对其进行二元分割,相应的二元树如图8-9所示。根据图像二元树的0叶结点和1叶结点的数目,删除多者,保留少者。如“E”字图像的二元树0叶结点较多,裁剪后如图8-10所示。

图8-8
【正确答案】
【答案解析】L=1 (2) R=1 (3) PutCode(L*2+R) (4) 1-CutPixel (5)AddQueue(T1) [解析] 本题涉及了某图像二元树存储与还原算法。考生需要用一定时间去分析算法的思想。算法中主要应用了二元树存储结构。(1)根据算法思想,二元树左边没有节点[if (T1→Left==NULL&&T1→Pixel== CutPixel)],判断为假,那么(1)处应为L=1。同理可判断(2)处应为R=1。(3)根据算法设计思想,“if (TreeNode→Leff==NULL)”判断为假时,应该写二进制码L*2+R到文件。故答案为PutCode(L*2+R)。 (4)还原算法,当获取的存储码NodeCode=GetCode()为0时,根据存储算法只有L=0,R=0时GetCbde()才为0,再根据存储算法中的“PutCode(1-CutPixel)”,可知TreePixel=1-CutPixel。(5)NodeCode==2的情况时,对于存储算法,应该是L=1,R=0,这样L*2+R=2才成立。那么(5)处应该为AddQueue(T1)。