发明名称 一种用于采样任务分解的方法
摘要 本发明提供了一种计算机图像渲染方法,该方法基于(t,s)序列,通过层级化置换操作实现对采样任务的分解,与通过对(t,s)序列在一个所选择的维度中进行分组以实现对采样任务的分解的方法相比,本发明不需要在一个额外的维度中对采样点进行分组,对(t,s)序列的生成矩阵也无限制条件,可用于任何类型的(t,s)序列,采样点的质量亦不受并行处理单元数量的影响。
申请公布号 CN102496170A 申请公布日期 2012.06.13
申请号 CN201110400054.3 申请日期 2011.12.06
申请人 阳赛 发明人 阳赛
分类号 G06T11/00(2006.01)I 主分类号 G06T11/00(2006.01)I
代理机构 代理人
主权项 1.一种计算机图像渲染方法,其特征为,包括以下步骤:(A)对于渲染图像时需要求值的积分<maths num="0001"><![CDATA[<math><mrow><munder><mo>&Integral;</mo><mi>I</mi></munder><mo>.</mo><mo>.</mo><mo>.</mo><munder><mo>&Integral;</mo><mi>I</mi></munder><mi>f</mi><mrow><mo>(</mo><msup><mi>x</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></msup><mo>,</mo><msup><mi>x</mi><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></msup><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msup><mi>x</mi><mrow><mo>(</mo><mi>S</mi><mo>)</mo></mrow></msup><mo>)</mo></mrow><msup><mi>dx</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></msup><msup><mi>dx</mi><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></msup><mo>.</mo><mo>.</mo><mo>.</mo><msup><mi>dx</mi><mrow><mo>(</mo><mi>S</mi><mo>)</mo></mrow></msup></mrow></math>]]></maths>使用数值计算的方法求其近似值,包括以下步骤:将对函数f(·)的采样分解为两个或更多的部分,每一部分交由一个独立的并行处理单元进行处理<maths num="0002"><![CDATA[<math><mrow><munder><mo>&Integral;</mo><mi>I</mi></munder><mo>.</mo><mo>.</mo><mo>.</mo><munder><mo>&Integral;</mo><mi>I</mi></munder><mi>f</mi><mrow><mo>(</mo><msup><mi>x</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></msup><mo>,</mo><msup><mi>x</mi><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></msup><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msup><mi>x</mi><mrow><mo>(</mo><mi>S</mi><mo>)</mo></mrow></msup><mo>)</mo></mrow><msup><mi>dx</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></msup><msup><mi>dx</mi><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></msup><mo>.</mo><mo>.</mo><mo>.</mo><msup><mi>dx</mi><mrow><mo>(</mo><mi>S</mi><mo>)</mo></mrow></msup><mo>&ap;</mo><mfrac><mn>1</mn><mi>N</mi></mfrac><munderover><mi>&Sigma;</mi><mrow><mi>d</mi><mo>=</mo><mn>1</mn></mrow><mi>D</mi></munderover><munderover><mi>&Sigma;</mi><mrow><msub><mi>i</mi><mi>d</mi></msub><mo>=</mo><mn>0</mn></mrow><mrow><msub><mi>N</mi><mi>d</mi></msub><mo>-</mo><mn>1</mn></mrow></munderover><mi>f</mi><mrow><mo>(</mo><msubsup><mi>x</mi><msub><mi>i</mi><mi>d</mi></msub><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></msubsup><mo>,</mo><msubsup><mi>x</mi><msub><mi>i</mi><mi>d</mi></msub><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></msubsup><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msubsup><mi>x</mi><msub><mi>i</mi><mi>d</mi></msub><mrow><mo>(</mo><mi>S</mi><mo>)</mo></mrow></msubsup><mo>)</mo></mrow><mo>;</mo></mrow></math>]]></maths>其中,<img file="FSA00000629162500013.GIF" wi="218" he="129" />为采样点的数量,D为并行处理单元的数量,N<sub>d</sub>为第d个处理单元分配的采样点数量,不同的处理单元所分配的采样点数量可以相同也可以不同;(B)确定步骤(A)中所述变量<img file="FSA00000629162500014.GIF" wi="351" he="81" />的值的方法,其中0≤i<sub>d</sub>≤N<sub>d</sub>-1,1≤d≤D,包括以下步骤:将<maths num="0003"><![CDATA[<math><mrow><mo>(</mo><msubsup><mi>x</mi><msub><mi>i</mi><mi>d</mi></msub><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></msubsup><mo>,</mo><msubsup><mi>x</mi><msub><mi>i</mi><mi>d</mi></msub><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></msubsup><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msubsup><mi>x</mi><msub><mi>i</mi><mi>d</mi></msub><mrow><mo>(</mo><mi>S</mi><mo>)</mo></mrow></msubsup><mo>)</mo></mrow></math>]]></maths>分组为<maths num="0004"><![CDATA[<math><mrow><mrow><mo>(</mo><msubsup><mi>x</mi><msub><mi>i</mi><mi>d</mi></msub><mrow><mo>(</mo><msub><mi>p</mi><mn>0</mn></msub><mo>+</mo><mn>1</mn><mo>)</mo></mrow></msubsup><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><msubsup><mi>x</mi><msub><mi>i</mi><mi>d</mi></msub><mrow><mo>(</mo><msub><mi>p</mi><mn>1</mn></msub><mo>)</mo></mrow></msubsup><mo>,</mo><msubsup><mi>x</mi><msub><mi>i</mi><mi>d</mi></msub><mrow><mo>(</mo><msub><mi>p</mi><mn>1</mn></msub><mo>+</mo><mn>1</mn><mo>)</mo></mrow></msubsup><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msubsup><mi>x</mi><msub><mi>i</mi><mi>d</mi></msub><mrow><mo>(</mo><msub><mi>p</mi><mn>2</mn></msub><mo>)</mo></mrow></msubsup><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msubsup><mi>x</mi><msub><mi>i</mi><mi>d</mi></msub><mrow><mo>(</mo><msub><mi>p</mi><mi>q</mi></msub><mo>+</mo><mn>1</mn><mo>)</mo></mrow></msubsup><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msubsup><mi>x</mi><msub><mi>i</mi><mi>d</mi></msub><mrow><mo>(</mo><msub><mi>p</mi><mrow><mi>q</mi><mo>+</mo><mn>1</mn></mrow></msub><mo>)</mo></mrow></msubsup><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths>其中p<sub>0</sub>=0,p<sub>q+1</sub>=s,0<p<sub>v+1</sub>-p<sub>v</sub>≤s<sub>max</sub>,0≤v≤q,s<sub>max</sub>为所选择的最大维度;对于变量组<img file="FSA00000629162500017.GIF" wi="405" he="98" />其中0≤v≤q,确定其值的方法包括以下步骤:<maths num="0005"><![CDATA[<math><mrow><msubsup><mi>x</mi><msub><mi>i</mi><mi>d</mi></msub><mrow><mo>(</mo><msub><mi>p</mi><mi>v</mi></msub><mo>+</mo><mi>&Delta;</mi><mo>)</mo></mrow></msubsup><mo>=</mo><msub><mi>h</mi><mi>&Delta;</mi></msub><mrow><mo>(</mo><msubsup><mover><mi>i</mi><mo>~</mo></mover><mrow><msub><mi>i</mi><mi>d</mi></msub><mo>,</mo><mi>d</mi></mrow><mrow><mo>(</mo><mi>v</mi><mo>)</mo></mrow></msubsup><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths>0≤v≤q,1≤Δ≤p<sub>v+1</sub>-p<sub>v</sub>;<maths num="0006"><![CDATA[<math><mrow><msubsup><mover><mi>i</mi><mo>~</mo></mover><mrow><msub><mi>i</mi><mi>d</mi></msub><mo>,</mo><mi>d</mi></mrow><mrow><mo>(</mo><mi>v</mi><mo>)</mo></mrow></msubsup><mo>=</mo><msub><mi>&pi;</mi><mi>v</mi></msub><mrow><mo>(</mo><msub><mi>i</mi><mi>d</mi></msub><mi>D</mi><mo>+</mo><mi>d</mi><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths>0≤v≤q;其中,h<sub>j</sub>(i):=(b<sup>-1</sup>,b<sup>-2</sup>,...,b<sup>-M</sup>)C<sup>(j)</sup>(b<sub>0</sub>(i),b<sub>1</sub>(i),...,b<sub>M</sub>,b<sub>M-1</sub>(i))<sup>T</sup>,其中<img file="FSA000006291625000110.GIF" wi="382" he="81" />为一b进制(t,s)序列的第j维生成矩阵,b<sub>r</sub>(i)表示整数i在b进制表示下的第r位数字,即<img file="FSA000006291625000111.GIF" wi="332" he="124" />M为所选择的在b进制表示下的最大精度;π<sub>v</sub>(·)为层级化置换操作,对一整数<img file="FSA000006291625000112.GIF" wi="358" he="124" /><img file="FSA000006291625000113.GIF" wi="483" he="124" />其中<maths num="0007"><![CDATA[<math><mrow><msubsup><mi>b</mi><mrow><mi>M</mi><mo>-</mo><mn>1</mn></mrow><mrow><mo>(</mo><mi>v</mi><mo>)</mo></mrow></msubsup><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow><mo>=</mo><mrow><mo>(</mo><msub><mi>b</mi><mrow><mi>M</mi><mo>-</mo><mn>1</mn></mrow></msub><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow><mo>+</mo><msub><mi>&xi;</mi><mi>v</mi></msub><mo>)</mo></mrow><mo>,</mo><mi>mod</mi><mi>b</mi></mrow></math>]]></maths><maths num="0008"><![CDATA[<math><mrow><msubsup><mi>b</mi><mrow><mi>M</mi><mo>-</mo><mn>2</mn></mrow><mrow><mo>(</mo><mi>v</mi><mo>)</mo></mrow></msubsup><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow><mo>=</mo><mrow><mo>(</mo><msub><mi>b</mi><mrow><mi>M</mi><mo>-</mo><mn>2</mn></mrow></msub><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow><mo>+</mo><msub><mi>&xi;</mi><mrow><mi>v</mi><mo>,</mo><msub><mi>b</mi><mrow><mi>M</mi><mo>-</mo><mn>1</mn></mrow></msub><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow></mrow></msub><mo>)</mo></mrow><mo>,</mo><mi>mod</mi><mi>b</mi></mrow></math>]]></maths><maths num="0009"><![CDATA[<math><mrow><msubsup><mi>b</mi><mrow><mi>M</mi><mo>-</mo><mn>3</mn></mrow><mrow><mo>(</mo><mi>v</mi><mo>)</mo></mrow></msubsup><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow><mo>=</mo><mrow><mo>(</mo><msub><mi>b</mi><mrow><mi>M</mi><mo>-</mo><mn>3</mn></mrow></msub><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow><mo>+</mo><msub><mi>&xi;</mi><mrow><mi>v</mi><mo>,</mo><msub><mi>b</mi><mrow><mi>M</mi><mo>-</mo><mn>1</mn></mrow></msub><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow><mo>,</mo><msub><mi>b</mi><mrow><mi>M</mi><mo>-</mo><mn>2</mn></mrow></msub><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow></mrow></msub><mo>)</mo></mrow><mo>,</mo><mi>mod</mi><mi>b</mi></mrow></math>]]></maths><maths num="0010"><![CDATA[<math><mrow><msubsup><mi>b</mi><mn>0</mn><mrow><mo>(</mo><mi>v</mi><mo>)</mo></mrow></msubsup><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow><mover><mo>=</mo><mover><mo>&CenterDot;</mo><mover><mo>&CenterDot;</mo><mo>&CenterDot;</mo></mover></mover></mover><mrow><mo>(</mo><msub><mi>b</mi><mn>0</mn></msub><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow><mo>+</mo><msub><mi>&xi;</mi><mrow><mi>v</mi><mo>,</mo><msub><mi>b</mi><mrow><mi>M</mi><mo>-</mo><mn>1</mn></mrow></msub><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow><mo>,</mo><msub><mi>b</mi><mrow><mi>M</mi><mo>-</mo><mn>2</mn></mrow></msub><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msub><mi>b</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow></mrow></msub><mo>)</mo></mrow><mo>,</mo><mi>mod</mi><mi>b</mi></mrow></math>]]></maths>其中ξ<sub>v</sub>,ξ<sub>v,0</sub>,ξ<sub>v,1</sub>,...,ξ<sub>v,b-1</sub>,ξ<sub>v,0,0</sub>,...,ξ<sub>v,b-1,b-1</sub>,...,ξ<sub>v,b-1,...,b-1</sub>,0≤v≤q,为相互独立的随机数。
地址 610016 四川省成都市东风路北一巷3号成都市川剧院宿舍