CN103500463A - Visualization method for multilayer shape feature fusion on GPU (Graphics Processing Unit) - Google Patents

Visualization method for multilayer shape feature fusion on GPU (Graphics Processing Unit) Download PDF

Info

Publication number
CN103500463A
CN103500463A CN201310488566.9A CN201310488566A CN103500463A CN 103500463 A CN103500463 A CN 103500463A CN 201310488566 A CN201310488566 A CN 201310488566A CN 103500463 A CN103500463 A CN 103500463A
Authority
CN
China
Prior art keywords
unit
gpu
buffer
value
depth
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201310488566.9A
Other languages
Chinese (zh)
Other versions
CN103500463B (en
Inventor
李胜
王菁
汪国平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing weishiwei Information Technology Co.,Ltd.
Original Assignee
Peking University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Peking University filed Critical Peking University
Priority to CN201310488566.9A priority Critical patent/CN103500463B/en
Publication of CN103500463A publication Critical patent/CN103500463A/en
Application granted granted Critical
Publication of CN103500463B publication Critical patent/CN103500463B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention provides a visualization method for multilayer shape feature fusion on a GPU (Graphics Processing Unit). According to the method, the sequencing and collecting of multiple fragments can be conducted by adopting a multilevel depth test strategy-based improved k-buffer algorithm, the multi-fragment stylized rendering technology can be formed by performing geometrical feature extraction on the multilayer fragments and combining a non-photorealistic rendering method, so that the shape features of multilayer geometrical surfaces in the front and the back and the middle of a single model or multiple models in a large-scale scene can be shown. Through the shape feature on the multilayer surfaces of the model, not only can the stylized rendering effect of various transparent and semi-transparent objects be shown, but also a user can conveniently observe the surface structure feature of the model. A good stylized feature visualization effect can be realized only by geometrically drawing a model scene in the GPU twice, and the real-time rate can be achieved.

Description

The method for visualizing that the upper multilayer shape facility of a kind of GPU merges
Technical field
The present invention relates to a kind of model visualization method on GPU, be specifically related to a kind ofly carry out the multiple-level surface Shape Feature Extraction and with translucent/transparent mode, multilayer feature is carried out to the method for visualizing that stylization merge to be drawn on GPU, belong to computer graphics and visual field.
Background technology
(Non-photorealistic or Stylized Rendering) drawn in feeling of unreality/stylization is computer graphics and visual one large important field of research, being different from Realistic Rendering makes every effort to scene effect is simulated the most really, the effect that non-photorealistic rendering is usually used in simulating some artistic effects or application-specific is arranged, as cartoon, pencil drawing, watercolor, scientific and technological illustration etc.Its common method is that scene information is carried out to vision is abstract, abandon unnecessary details, concentrate to extract and describe the main shape facility on three-dimensional model surface, as the crestal line (ridges) of outline line (silhouettes/contours) and model surface, valley line (valleys) etc.What existing non-photorealistic rendering technology mostly showed is the feeling of unreality effect of opaque article, the i.e. shape information of the nearest layer of surface sector-style drafting of formatting of going forward side by side from viewpoint on an extraction model, the shape information on each being blocked later layer surface is left in the basket, and can't observe.Effect is drawn in the shape facility and the stylization that have at present minority non-photorealistic rendering method can represent the object multilayer, as the volume drawing (Volume Illustration) of feeling of unreality is that a class studies a question, but only limits to the drafting to the volume data model.
Multi-disc unit draws
Transparent at model, in the drawing process of translucent effect, before and after needing to guarantee, the color on every layer of surface is to merge according to correct order (as from back to front), it is all out of order that yet tri patch is sent into the process of graphics pipeline and rasterisation generation sheet unit, so just need diabolo or sheet unit according to the sequence of depth value size, to guarantee correct fusion sequence, this class problem is called order, and independently transparent effect (order-independent transparency) (specifically can be referring to EVERITT, C.2001.Interactive order-independent transparency.Tech.rep., NVIDIA Corporation.) problem.Multi-disc unit (multi-fragment) rendering technique is an independently class common technology of transparent effect of drawing order, and it collects the sheet unit on multiple-level surface at each pixel place, and the sequence of depth value size is pressed to by these sheet units, then merges in order.Except Transparency Phenomenon, multi-disc unit technology also can be used for the drafting of the multi-effects such as volume drawing (volume rendering), constructive solid geometry (constructive solid geometry).
The first technology of typical multi-disc comes from (specifically can be referring to CARPENTER L.:The A-buffer, an antialiased hidden surface method.SIGGRAPH Comput.Graph.18,3 (1984), 103 – 108.) concept of the A-buffer proposed, its thought is to set up the list of a sheet unit at each pixel place, collect all units at this pixel place, then to the sheet unit sequence in the list of sheet unit; Every frame only need be drawn collection scenario one time in theory; But because the sheet unit sum at each pixel place can't be determined, so also can't determine that this distributes How much memory for each pixel, therefore can't realize on GPU at that time.R-buffer(afterwards specifically can be referring to WITTENBRINK C.M.:R-buffer:a pointerless a-buffer hardware architecture.In HWWS ' 01:Proceedings of the ACM SIGGRAPH/EUROGRAPHICS workshop on Graphics hardware (New York, NY, USA, 2001), ACM, pp.73 – 80.), F-buffer(specifically can be referring to MARK W.R., PROUDFOOT K.:The f-buffer:a rasterization-order fifo buffer for multi-pass rendering.In HWWS ' 01:Proceedings of the ACM SIGGRAPH/EUROGRAPHICS workshop on Graphics hardware (New York, NY, USA, 2001), ACM, pp.57 – 64.), FreePipe(specifically can be referring to LIU F., HUANG M.-C., LIU X.-H., WU E.-H.:Freepipe:a programmable parallel rendering architecture for efficient multi-fragment effects.In I3D ' 10:Proceedings of the2010ACM SIGGRAPH symposium on Interactive3D Graphics and Games (New York, NY, USA, 2010), ACM, pp.75 – 82.) be some improving one's methods to the graph rendering streamline, make it can apply the A-buffer algorithm, but be not suitable for the graph rendering streamline of standard.(specifically can be referring to MAMMEN, A.1989.Transparency and antialiasing algorithms implemented with the virtual pixel maps technique.IEEE Computer Graphics and Applications9, 4, 43 – 55.) and (specifically can be referring to EVERITT, C.2001.Interactive order-independent transparency.Tech.rep., NVIDIA Corporation.) propose respectively and realized the Depth Peeling algorithm, the method is by drawing the multipass geometric scene, isolate the sheet unit from the nearest one deck of viewpoint while drawing for every time, finally reach the effect of multi-disc unit sequence, the geometric scene that this algorithm is N for the level complexity need to be drawn N time, so efficiency is not high.(specifically can be referring to BAVOIL L., M YERS K.:Order independent transparency with dual depth peeling.Tech.rep., NVIDIA Corporation, 2008.) the double-deck Depth Peeling algorithm that proposes is the improvement to the Depth Peeling algorithm, each geometric scene is drawn and is separablely gone out recently and two synusia units farthest, efficiency is the twice of Depth Peeling algorithm, still needs to draw the multipass geometric scene.(specifically can be referring to MYERS, K., BAVOIL, L.2007.Stencil routed A-Buffer.ACM SIGGRAPH2007Technical Sketch Program.) propose to use the anti-sawtooth buffer memory of multiple sampling (Multi-sample antialising) the simulation A-buffer algorithm of DirectX10, but every time scene drawing can only be collected at each pixel place the sheet unit of limited quantity, so will collect neat all units, still need to draw the multipass geometric scene.(specifically can be referring to BAVOIL, L., CALLAHAN, S.P., LEFOHN, A., AOL.D.COMBA, J., ANDSILVA, C.T.2007.Multi-fragment effects on the GPU using the k-buffer.In Proceedings of the2007symposium on Interactive3D graphics and games, 97 – 104.) the k-buffer algorithm is proposed, this is a kind of approximate A-buffer algorithm, distribute the internal memory of fixed size for each pixel on GPU, fixedly be collected into many k sheet units during drafting at each pixel place, therefore can be completed by the single pass scene drawing, just can ignore the sheet unit that exceeds front k layer, the problem of the method is likely generating plate unit read/write conflict, makes to draw effect inaccurate.(specifically can be referring to Liu F, Huang MC, Liu XH, Wu EH:Single Pass Depth Peeling via CUDA Rasterizer.ACM SIGGRAPH2009Technical Talks.) in, use the atomic operation of CUDA to solve the sheet unit read/write conflict problem of k-buffer, but realize on the renderer that need to write at CUDA.(specifically can be referring to LIU F., HUANG M C., LIU XH., WU EH.:Efficient depth peeling via bucket sort.In HPG ' 09:Proceedings of the Conference on High Performance Graphics2009 (New York, NY, USA, 2009), ACM, pp.51 – 57.) the sheet unit sort method based on bucket sort is proposed, the method efficiency is very fast, only need the single pass geometric scene to draw, but likely sheet unit conflict in generating barrel, at this moment need to adopt the probability of sheet unit conflict in the method minimizing bucket that multipass is drawn or self-adaptation is divided.Microsoft has realized the A-buffer algorithm in the DirectX11 of its release figure and media specification, they distribute continuously the array space of all units of a storage in the Buffer object (buffer) of GPU for each pixel, but due to the sheet at pixel place unit sum remains can't be predetermined, so the method need to be drawn geometric scene twice, the first pass scene drawing is for the sheet unit sum of each pixel of accumulative total, thereby calculate the deviation post (offset) of sheet unit's array in buffer zone of each pixel, second time scene drawing the actual all units at each pixel place of collecting in sheet unit array.(specifically can be referring to YANG, J., HENSLEY, J.,
Figure BDA0000397385980000031
h., ANDTHIBIEROZ, N.2010.Real-time concurrent linked list construction on the gpu.In rendering Techniques2010:Eurographics Symposium on Rendering, Eurographics, vol.29) adopt the method for concurrent chained list (concurrent linked-list) to realize the A-buffer algorithm, a storage of linked list of all unit's structures to each pixel place, so just, without the sheet unit sum of realizing knowing each pixel, only needing the single pass geometric scene to draw can complete; The problem of the method is any sheet of the inconvenient random access of list structure unit, and storage chained list node pointer will take certain space.[Microsoft2010] and (specifically can be referring to YANG, J., HENSLEY, J.,
Figure BDA0000397385980000032
h., ANDTHIBIEROZ, N.2010.Real-time concurrent linked list construction on the gpu.In rendering Techniques2010:Eurographics Symposium on Rendering, Eurographics, vol.29) method also all by the atomic operation function supported of newer GPU.
Feeling of unreality/stylization is drawn
Feeling of unreality/effect that stylization drafting realizes and the method for use are of a great variety, wherein large class method commonly used is exactly the shape facility of extraction model, comprises crestal line (ridges), valley line (valleys) of outline line (silhouettes/contours) and model surface etc.The concrete method of extracting shape facility can be divided into again based on geometric space (object-space) and based on image space (image-space).
Method based on geometric space is usually by the uncontinuity on infinitesimal geometry computational analysis model surface, and the boundary of model and background etc., as indicative outline line (suggestive contours) (specifically can be referring to DeCarlo D., Finkelstein A., Rusinkiewicz S., and Santella A., " Suggestive contours for conveying shape, " in Proceedings of ACM SIGGRAPH, 2003, pp.848 – 855.), ridge valley line (ridge-valley lines) (specifically can be referring to Ohtake Y., Belyaev A., and Seidel H., Ridge-valley lines on meshes via implicit surface fitting, in Proceedings of ACM SIGGRAPH, 2004, pp.609 – 612.), high bright line (highlight lines) (specifically can be referring to DeCarlo D.and Rusinkiewicz S., " Highlight lines for conveying shape, " in Proceedings of NPAR, 2007, pp.63 – 70.), obviously crestal line (apparent ridges) (specifically can be referring to Judd T., Durand F., and Adelson E., " Apparent ridges for line drawing, " in Proceedings of ACM SIGGRAPH, 2007.), PELs (photic extremum lines) (specifically can be referring to Xie X., He Y., Tian F., Seah H.S., Gu X., and Qin H., " An effective illustrative visualization framework based on photic extremum lines (PELs), " IEEE Transactions on Visualization and Computer Graphics, vol.13, no.6, pp.1328 – 1335, 2007.), dividing curve (demarcating curves) (specifically can be referring to Kolomenkin M., Shimshoni I., and Tal A., " Demarcating curves for shape illustration, " ACM Transactions on Graphics, vol.27, no.5, 2008.), Laplce's line (Laplacian lines) (specifically can be referring to Zhang L., He Y., Xia J.Z., Xie X.X., Chen W., " Real-Time Shape Illustration Using Laplacian Lines ", IEEE Transactions on Visualization and Computer Graphics, Vol.17, No.7, pp.993 – 1006, 2011.) etc.These methods produce shape facility by second order or three order derivatives of computation model surface properties usually, consuming time larger when model meshes is complicated, especially calculate the method for three order derivatives, the more difficult real-time speed that reaches.In addition, the method based on geometric space also faces the problem of considering multiple levels of detail (LODs, levels of detail), and the quantity of characteristic curve, density need distance early work accommodation according to the observation.Certain methods (specifically can be referring to JEONG K. by pretreatment stage generation simplification grid, solving this problem, NI A., LEE S., and MARKOSIAN is control in line drawings of3D meshes.The Visual Computer21 L.2005.Detail, 8-10 (September), 698 – 706.Special Issue of Pacific Graphics2005.) (specifically can be referring to NI A., JEONG K., LEE S., and MARKOSIAN is line drawings from3D meshes.Tech.Rep.CSE-TR-510-05 L.2005.Multi-scale, Department of Electrical Engineering and Computer Science, University of Michigan, July.).
Method based on image space is usually by detecting some scene properties as depth value at image space, object ID(specifically can be referring to SAITO, T., and TAKAHASHI, T.1990.Comprehensible rendering of3-d shapes.In ACM SIGGRAPH ' 90, 197 – 206.), (specifically can be referring to HERTZMANN, A.1999.Introduction to3D Non-Photorealistic Rendering:Silhouettes and Outlines.In ACM SIGGRAPH99Course Notes.Course on Non-photorealistic Rendering, S.Green, Ed.ch.7.), normal vector (specifically can be referring to DECAUDIN, P.1996.Cartoon looking rendering of3D scenes.Research Report2919, INRIA, June.), (specifically can be referring to NIENHAUS, M., and DOLLNER, J.2005.Blueprint Rendering and Sketchy Drawings.In GPU Gems II, M.Pharr, Ed.Addison-Wesley Professional, 235 – 252.) etc. uncontinuity obtains shape facility information.Method based on image space is suitable for producing LODs natively, because the quantity of detected characteristic curve and density depend on the 3D project objects to the area on viewport.Method based on image space is also calculated without model meshes being carried out to complicated infinitesimal geometry, and only depend on the resolution of synthetic image computing time, so speed, can reach real-time speed.Yet, method based on image space is owing to calculating in pixel scale, so be unfavorable for, according to the geometric space attribute of model, characteristic curve is carried out to the stylization drafting, and easily produce the artificial trace (pixel-level artifacts) of pixel scale.
The multilayer non-photorealistic rendering
Effect is drawn in the shape facility and the stylization that have at present minority non-photorealistic rendering method can represent the object multilayer.As the volume drawing (Volume Illustration) of feeling of unreality is that a class studies a question, can represent the shape facility of the multilayer of volume data model inner space.As the feature halation based on volume data (feature halos) (specifically can be referring to Svakhine N.A.and Ebert D.S., " Interactive volume illustration and feature halos. " in Pacific Graphics, 2003, pp.347 – 354), stick figure (line drawings) (specifically can be referring to Burns M., Klawe J., Rusinkiewicz S., Finkelstein A., and DeCarlo D., " Line drawings from volume data, " in Proceedings of ACM SIGGRAPH, 2005, pp.512 – 518.), and (specifically can be referring to Ebert D.and Rheingans P., " Volume illustration:non-photorealistic rendering of volume models, " in Proceedings of IEEE Visualization, 2000, pp.195 – 202.), (specifically can be referring to Nagy, Z.Schneider J., and Westermann R., " Interactive volume illustration. " in VMV, 2002, pp.497 – 504.), (specifically can be referring to Schein S.and Elber G., " Adaptive extraction and visualization of silhouette curves from volumetric datasets, " Vis.Comput., vol.20, no.4, pp.243 – 252, 2004.), (specifically can be referring to Bruckner S.and Groller M.E., " VolumeShop:An interactive system for direct volume illustration, " in IEEE Visualization2005, pp.671 – 678.), (specifically can be referring to Chen W., Lu A., and Ebert D.S., " Shape-aware volume illustration, " in Computer Graphics Forum (Proceedings of Eurographics2007), vol.26, no.3, 2007, pp.705 – 714.), (specifically can be referring to Svakhine N.A., Ebert D.S., and Andrews W.M., " Illustration-inspired depth enhanced volumetric medical visualization, " IEEE Transactions on Visualization and Computer Graphics, vol.15, no.1, pp.77 – 86, 2009.) work etc.Due to the volume data model natively according to voxel the sequence of positions in three dimensions organized, so when fusion each surperficial shape facility of front and back and stylize effect, without carrying out again depth ordering, can naturally press from front to back or the fusion of order from back to front.But, for the model data that there is no the opsition dependent sequential organization, need to consider each surperficial fusion sequence problem before and after model.
Summary of the invention
The present invention is based on the arbitrary polygon grid model, polygonal mesh is exactly the outside surface of a polyhedron body, is by summit, a set just forming with face.(mathematical definition of this topological relation is called again the broad sense simplicial complex for the geometric position information that polygonal mesh has comprised grid vertex and the topological relation of grid, need to meet 6 conditions, by set tlv triple K=(V, E, F) mean), combine multi-disc unit's rendering technique and non-photorealistic rendering technology.Use multi-disc unit technology to sort by depth order to the unit of the sheet on model surface, the shape facility that the shape description symbols on each layer of surface of extraction model means, and then merge in order each surperficial shape information, form visual in conjunction with multiple transparent, translucent stylize effect." triangle gridding " described in subsequent content of the present invention is a kind of of polygonal mesh, and it is defined as for broad sense simplicial complex K=(V, E, F), if all faces in F have triangle, K is triangle simplicial complex, i.e. triangle gridding.Due to model the most frequently used in triangle gridding figure and visualization processing, the present invention just be take triangle gridding as example, the related content of statement invention, and in the present invention, all technology that realize for triangle gridding and related content, be equally applicable to polygonal mesh.
Technical scheme of the present invention is as follows:
The thought of whole invention is at first to use the improvement k-buffer algorithm based on multistage depth test strategy to carry out sequence and the collection of multi-disc unit, deposits k-buffer calculating required principal curvatures and the normal direction of shape description symbols Apparent Relief in as the sheet meta-attribute simultaneously; Then, but find the continuous sheet unit in the discontinuous corresponding three-dimensional surface mesh space, memory location of sheet unit and connected, carry out the convolutional calculation of Apparent Relief in the sheet unit on the every one deck of model surface; Finally according to convolution results, continue to calculate the Apparent Relief shape description symbols of multilayer tablet unit, and use it for to multilayer feature and show that the multiple non-photorealistic rendering effect of relevant translucent or transparent substance generates.
The method for visualizing that in the present invention, the multilayer shape facility merges needs an extra pre-service before starting to carry out.Preprocessing process is by calculating the principal curvatures k1 on each summit of triangle gridding, and k2, because result of calculation is that sight line is irrelevant, so calculate and once get final product before the drafting circulation starts.
The method for visualizing that the upper multilayer shape facility of a kind of GPU of the present invention merges, its step comprises:
1) treat model or the scene that visual polygonal mesh means, obtain the principal curvatures k1 on each summit of the grid of grid model intermediate cam described in any observation space, k2;
2) according to the improved k-buffer algorithm based on multistage depth test strategy, texture is bound to elementary area, by carrying out first pass GPU, draw for how much, realize collecting the sheet metamessage on multiple-level surface in described grid model, described metamessage sorted and depth value z is deposited in k-buffer (z) by the atom compare operation in order simultaneously; The so-called drafting for how much refers to that only the geological information of rendering model (comprises the summit geometric coordinate, and by the face of the topological connection relation representative on summit, do not comprise operations such as carrying out illumination, light and shade processing, texture, do not consider the material properties of model surface etc. yet), be the most basic drafting.
3) according to the improvement k-buffer algorithm based on multistage depth test strategy, texture is bound to elementary area, draw for how much by carrying out second time GPU, realize again collecting the sheet metamessage on multiple-level surface in described grid model.This sheet unit position in k-buffer of item judgement equated by search depth value z in described k-buffer (z), again by the first two component n1 of normal direction in the observation space of sheet unit described in this step, n2, principal curvatures k1, k2 deposits k-buffer (n1 in, n2, k1, k2) relevant position complete second time GPU and draw for how much;
4) draw to identify described k-buffer (n1 by the GPU image level in GPU, n2, k1, k2) in four of the upper and lower, left and right geometric jacquard patterning unit surface abutment flange unit of each sheet unit respectively the place in k-buffer the layering level number and four level numbers are kept in texture, but link the sheet unit of the discontinuous adjacency on geometry of depth value z sorting position in described k-buffer; So-called image level drafting refers to does not process three-dimensional geometric graphic element information in the process of a drafting, but the processing directly walked abreast for each pixel in sheet unit's processor or pixel processor is drawn therefore be called image level.
5) in GPU, adopt twice GPU image level to draw successively to every layer of n1 that links rear panel unit, n2, k1, k2 carries out convolution on the x direction and the convolution on the y direction, calculate the shape description symbols of multilayer tablet unit, make distributed store at different sheets unit's levels but how much continuous shape facilities can both extract and the shape description (Apparent relief method of the prior art can only be calculated the shape description symbols of single-layer sheet unit) of connected complete;
6) result of extracting according to the multilayer shape description symbols is carried out the feeling of unreality of multilayer tablet unit/stylization drafting, realizes the rear output visualization result of specifically playing up of various effects.
The described improved k-buffer algorithm based on multistage depth test strategy, the algorithm ultimate principle is by texture object being bound to the texture image unit, adopts the atomic operation function, in coloration program, the texture video memory is carried out to reading-revise-write operation (the sheet unit level insertion sort operation in this algorithm belongs to a kind of atomic operation wherein) of multiple atomicity; When a tinter thread is carried out atomic operation to a memory location, other tinter threads can't be accessed this position, until whole read-write operation completes.
Further, the specific implementation step in GPU of the improvement k-buffer algorithm based on multistage depth test strategy is as follows:
1) first all initialization in k-buffer are called to a possible maximum depth value, because atomic operation is only supported 32 integer data, depth value z are encoded into to 32 signless integers;
2) rasterization stage is processed each sheet unit, and the depth value of establishing current new film unit is z 0, in k-buffer, the depth value file layout of respective pixel position is Linear array of the one dimension, by z 0successively with k-buffer in each depth value z of respective pixel position carry out ratio of integers;
3) if z 0be greater than the depth value z stored in the currentitem one-dimension array of respective pixel position in k-buffer i, the depth value z stored in this array item iremain unchanged, use z 0the next item down z of continuation and one-dimension array element i+1relatively; So recycle ratio, until z 0be less than the depth value z of a certain kthe time, the depth value z of new film unit 0insert this array item position, and read the initial value z of this array item k, exchanged z 0with the array item z in one-dimension array kvalue;
4) continue with new z 0value and follow-up array element z k+1carry out ratio of integers, the value itself of storing in the Linear array of the one dimension due to this respective pixel position storage in k-buffer is sorted according to order from small to large, so the result of later each compare operation is all z 0be less than the z value of current number group element, so algorithm can exchange this two depth values; This step can instruct the array element that runs into a sky (being the rreturn value of the atomic operation maximum depth value while being initialization), or arrives the array end, and circulation finishes.
5) if until circulation finishes all not find the position that can insert new film unit, full the and first depth value of new film of k-buffer is greater than all depth values of having deposited, and new film unit can not be stored into k-buffer; The end of described first tinter abandons this sheet unit simultaneously, no longer any information is write to frame buffer zone.
Further, four of the upper and lower, left and right geometric jacquard patterning unit surface abutment flange unit that described GPU image level draws to identify each sheet unit respectively the layering level number in k-buffer and concrete operation method that these four level numbers are kept in texture as follows:
1) draw the rectangle of a viewport size, in sheet unit tinter, calculate the level number of four geometric jacquard patterning unit surface abutment flange units of each sheet unit in the k-buffer that mates current pixel;
2) coupling adopts a kind of approximation method, sets a depth difference threshold value thresh Δ Z, certain sheet unit on neighbor and when anter unit depth difference while being less than this threshold value, just think that these two sheet units are connected on model surface;
3), if there is plural unit at the neighbor place and is less than thresh Δ Z when the depth difference of anter unit, one of desirable depth difference minimum or level number are immediate one; If do not have the depth difference of sheet unit and this sheet unit to be less than thresh Δ Z, think that this sheet unit does not have an abutment flange unit this side up, i.e. its profile place in model, level number is designated as-1.
4) for each sheet unit, the level number of the abutment flange unit on each direction can be stored with 8bit, and four direction can be stored with 32bit up and down, and each pixel place need store maximum k sheet units, uses the MRT technology that they are kept in one group of texture.
Further, in described step 5), carry out respectively one dimension convolution on the x direction and the one dimension convolution on the y direction,
1) first pass during convolution, for when the geometric jacquard patterning unit surface abutment flange unit level number of anter primitive root according to the previous step record, at first finds the f of abutment flange unit on the left side on the x direction left1, and then find f left1the f of abutment flange unit on the left side left2;
2) according to step 1), can find a string connected sheet unit, there is no left abutment flange unit until arrive the border of convolution kernel or certain sheet unit, utilize the MRT technology to be stored in the texture of one group of floating type the result of first pass convolution, for second time convolution;
3) the ,Xian Cong center up links every synusia unit and is weighted to convolution results simultaneously during the convolution on the y direction, and then down operates equally from centre;
4) adopt the convolution results of each sheet unit of current pixel place in second time, calculate the shape description symbols of each sheet unit.
Further, described shape description symbols Apparent Relief is a bivector
Figure BDA0000397385980000091
direction the nature of concavity and convexity of model surface has been described; And
Figure BDA0000397385980000092
length the degree of crook of model surface has been described,
Figure BDA0000397385980000093
computation process as follows:
1) in the model space, calculate
Figure BDA0000397385980000094
direction
Figure BDA0000397385980000095
be the nature of concavity and convexity of curved surface, at first algorithm calculates principal curvature of surface k1 and the k2 on triangle gridding summit, makes k1 and k2 correspond respectively to two coordinate axis, vector
Figure BDA0000397385980000096
direction be direction;
2) at image space, calculate
Figure BDA0000397385980000098
length L be the degree of crook of curved surface, in image space, computing method is to the rate of change in neighborhood of pixels, the degree of crook calculated is that sight line is relevant;
3) combination
Figure BDA0000397385980000099
direction
Figure BDA00003973859800000910
and length L, obtain
Figure BDA00003973859800000911
Can be preferably, feeling of unreality/the stylization of described multilayer is plotted in second time sheet unit drafting processing and completes simultaneously, by in conjunction with method for drafting transparent, translucent effect, with the non-photorealistic rendering method of Apparent Relief shape description symbols, realized the multiple effect of visualization that can show model multilayer shape facility.
For certain pixel, first calculate the color value of the feeling of unreality effect that its every synusia unit shows on this layer of surface, then according to drafting rule transparent, translucent effect, the color value of the feeling of unreality effect of each synusia unit of front and back is merged, finally obtain combining multilayer non-photorealistic rendering effect transparent, translucent effect.
Use Apparent Relief shape description symbols to realize that the method for stylize effect is according to drawing a texture that is called ARM (Apparent Relief Map) of style definition, and with the bivector of shape description symbols
Figure BDA00003973859800000912
as texture coordinate read texture value (
Figure BDA00003973859800000913
the value of each component is mapped to [0,1] from [1,1] and usings as texture coordinate), the texture value of reading can directly be drawn effect as stylization, also can be used as intermediate value, for realizing final stylize effect.
Can be preferably, by the outstanding shape facility that represents model front and back multiple-level surface, make the user can better observe the structure of a model, described ARM is 1 in shape facility highlight (edge, the concavo-convex obvious place etc.) value of model, and be 0 in the smooth place of model surface value, so can give prominence to well the shape facility of model with this ARM, and filter out smooth part.For every synusia unit, the texture value of reading from ARM is as the transparency α value of its color, rgb value by predefined color as its color, what drew out the position that feature is outstanding like this is exactly opaque particular color, and does not need the position of prominent feature to draw out to be exactly transparent color fully; Then, the computing method of the α in drawing with transparent effect in the present invention-mixing, merge the NPR color of each synusia unit from back to front by depth order, obtain final drawing result.The transparent effect of the own illumination of model of can also superposeing in the present invention forms preferred visualization scheme 1, as shown in Fig. 3 (a)-Fig. 3 (c), is transparent model illumination and the Fusion Features design sketch that adopts preferred visualization scheme 1 to be generated.
Can preferably, in the present invention, also can strengthen by the method for outstanding shape facility the drafting of translucent effect.Draw the translucent effect of model, used the shape facility of the highlighted nearest layer of surface of light tone in the present invention, and used the shape facility on black strengthening each layer of surface, back.When the simulation translucent effect, only consider the absorption of light in translucent object in the present invention, ignore dispersion effect.By Beer-Lambert law I a=exp (σ t, l) simulate the ambient light color of translucent phenomenon, wherein σ tbe absorption coefficient, l is the distance that light passes in the object medium, and l can try to achieve by the depth difference between cumulative every two adjacent lamina units.If consider the decay of incident ray at body surface, can use Schlick equation approximate simulation Fresnel coefficient: F t=1-(1-cos θ) 5, wherein θ is incident angle, accumulates each surperficial Fresnel coefficient and acts on environmental light brightness I acan simulate the Fresnel phenomenon.Finally the color at the surperficial shape dress of the color of translucent effect and each feature place is merged mutually, the translucent drafting effect of shape facility of having been strengthened forms preferred visualization scheme 2, as shown in Fig. 4 (a)-Fig. 4 (c), is translucent model and the Fusion Features design sketch that adopts preferred visualization scheme 2 to be generated.
Can preferably, can also realize by this system the artistic style drafting effect of other some transparent appearances.Realized the cartoon effect of two kinds of transparent form in the present invention.Calculate the color of the cartoon effect of every synusia unit in the present invention, and then the method for α-mixing for the color value of each layer of cartoon effect is merged, the method acquisition of the available similar upper example of transparency α value of every synusia unit, because the cartoon effect place smooth at model surface is also coloured, so the lower limit of α value can be made as one and be greater than 0 value, the preferred visualization scheme 3 of above formation, as Fig. 5 and Fig. 6 adopt see-through card that preferred visualization scheme 3 the is generated design sketch of formatting that ventilates.
Beneficial effect:
The present invention propose a kind of fully on GPU by the multilayer Shape Feature Extraction and carry out multilayer tablet unit and merge the stylized method for visualizing of being drawn.Method of the present invention is in conjunction with existing non-photorealistic rendering technology and multi-disc unit rendering technique, can show in a model or large scale scene before and after a plurality of models and the shape facility on middle multiple-level surface.Shape facility on the application model multiple-level surface, both can show multiple stylization transparent, translucent object and draw effect, can be convenient to the spatial structure characteristic that the user observes model again.Implement and only need in to the model scene, carry out twice geometric model and draw and just can obtain good stylized feature visualization effect, and can reach real time rate.
The accompanying drawing explanation
Fig. 1 is the GPU intermediate result schematic diagram data that model visible system real-time online is drawn flow process and generated, and the two ends of arrow have meaned respectively the input and output side of data.
Fig. 2 is the sheet unit discontinuous problem schematic diagram in depth ordering memory location in k-buffer that geometric jacquard patterning unit surface is adjacent.
Fig. 3 (a)-Fig. 3 (c) is transparent model illumination and the Fusion Features design sketch that adopts preferred visualization scheme 1 to generate
Fig. 4 (a)-Fig. 4 (c) is translucent model and the Fusion Features design sketch that adopts preferred visualization scheme 2 to generate.
Fig. 5 and Fig. 6 are the see-through card that adopts preferred visualization scheme 3 the to generate design sketchs of formatting that ventilates.
Embodiment
Below in conjunction with the accompanying drawing in the embodiment of the present invention, the technical scheme in the embodiment of the present invention is clearly and completely described, be understandable that, described embodiment is only the present invention's part embodiment, rather than whole embodiment.Embodiment based in the present invention, those skilled in the art, not making under the creative work prerequisite the every other embodiment obtained, belong to the scope of protection of the invention.
The GPU intermediate result schematic diagram data that model visible system real-time online is drawn flow process and generated as shown in Figure 1.Adopt following method to carry out the visual of multilayer shape facility fusion:
The first step: use the improvement k-buffer algorithm based on multistage depth test strategy to carry out sequence and the collection of GPU multi-disc unit, simultaneously calculating the required principal curvatures k1 of Apparent Relief, the first two component n1 of k2 and (being transformed into observation space) normal direction, n2 deposits k-buffer in as the sheet meta-attribute.
The ideal situation of this step is that the logical geometric scene of going over is drawn the storage that just simultaneously completes the sequence of sheet unit and sheet meta-attribute, but needs to carry out twice geometric model/scene drawing when actual the realization in the present invention.This be due in the present invention in order to solve the sheet unit read/write conflict problem of k-buffer, adopt the improvement k-buffer algorithm based on multistage depth test strategy, use atomic ratio to operate sheet unit depth ordering.If adopting a geometric scene draws, in sheet unit sequencer procedure, need to guarantee the first two component n1 of each sheet unit, n2, principal curvatures k1, k2 is read and write and is moved together with depth value z in same atomic operation, because 32 integers are only supported in the atom compare operation of OpenGL at present, if z, n1, n2, k1, five floating point values compressions of k2 are stored in 32 integers, and precision can't guarantee, so taked the strategy of drawing twice geometric scene to address this problem in the present invention.
First pass is drawn does not need to input any extra vertex attribute (except the coordinate on summit), the texture of k UINT32 type is bound to image Unit texture image unit, in fragment program, depth value z is encoded into to 32 signless integers, uses the atom compare operation complete the sequence of sheet unit and deposit z in k-buffer (z).This is drawn needs to use the improvement k-buffer algorithm based on multistage depth test strategy.
Second time drafting needs principal curvatures k1, k2 and normal direction be as vertex attribute inlet flow waterline, in rasterization process, and newly-generated sheet unit for each, this sheet unit position in k-buffer of item judgement equated by search depth value in k-buffer (z), then by its n1, n2, k1, k2 deposits k-buffer (n1 in, n2, k1, k2) relevant position; N1, n2, k1, k2 just in time can be stored in the texture of k RGBA FP32 type.Because each fragment program can only upgrade of k-buffer and need to keep other constant, so second time drafting still needs texture is bound to Image Unit.This be because, if use MRT, fragment program must output valve arrive all k frame buffer zone, otherwise can produce unknown result, so need first read original k item from texture, after revising wherein one, more all output to them in MRT, yet at this moment just the same with original k-buffer algorithm again, can produce and read-revise-problem of write conflict.Therefore second time drafting still can not be used MRT, and need to be k-buffer (n1, n2, k1, k2) texture also bind Image Unit texture image unit, that uses its support writes function (function imageStore) at random, so just can be by the n1 of new film unit, n2, k1, k2 writes a certain of k-buffer and keeps other constant.In addition, this twice geometric scene drawn all needs to close polygon surface rejecting (GL_CULL_FACE) and depth test (GL_DEPTH_TEST), to guarantee all units, can correctly be collected.
Second step: but in GPU the sheet unit of the discontinuous adjacency on geometry in depth ordering position in link k-buffer.
This step is to prepare for next step apparent relief and convolution process thereof.Apparent Relief algorithm need to be to n1 in image space, n2, k1, k2 carries out respectively the one dimension convolution on one dimension convolution on the x direction and y direction, the convolution of former algorithm for be from the sheet meta-attribute on the nearest layer of surface of viewpoint, when expanding on multi-disc unit effect, in the present invention, just need between lip-deep unit of every one deck, carry out twice respectively convolution.A kind of idea intuitively is directly in each synusia unit of k-buffer, to do convolution, yet this can produce inaccurate result at some profile places.For two adjacent pixels, in most cases, their same synusia units in k-buffer on model surface also in same layer, be connected, but at some profile places, the sheet unit that in k-buffer, level number is identical in fact may be in different layers, disjunct at model surface, and on model surface real how much connected sheet units in k-buffer in different layers.As shown in Figure 2, a, b, c means respectively the ray through 3 neighbors, A0~A1, B0~B3, the C0~C3 sheet unit that corresponding these three pixel places generate respectively.For b and c, the sheet unit that in their k-buffer, level number is identical also is connected on model surface; But just different for a and b, although A0 and B0, A1 and B1 are with layer in k-buffer, on model, be disjunct, and A0 and B2, A1 and B3 are only and are connected on model surface, should carry out convolution algorithm together.
As shown in Figure 1 sign (left side, the right side, upper, under) level number of the position at the sheet unit place of four direction adjacency on geometry.Arrow in figure means the input and output direction of data.For addressing this problem, draw to identify geometry abutment flange unit which layer in k-buffer respectively of the upper and lower, left and right four direction of each sheet unit in the present invention by GPU image level, and these four level numbers are kept in texture.Concrete grammar is, draws the rectangle of a viewport size, in sheet unit tinter, calculates the level number of four abutment flange units of each sheet unit in the k-buffer of coupling current pixel, finally uses the MRT technology that they are kept in one group of texture.The thought of coupling adopts a kind of approximation method, sets a depth difference threshold value thresh Δ Z, certain sheet unit on neighbor and when anter unit depth difference while being less than this threshold value, just think that these two sheet units are connected on model surface, otherwise otherwise.If there is plural unit at the neighbor place and is less than thresh Δ Z when the depth difference of anter unit, one of desirable depth difference minimum or level number are immediate one; If do not have the depth difference of sheet unit and this sheet unit to be less than thresh Δ Z, think that this sheet unit does not have an abutment flange unit this side up, i.e. its profile place in model, level number is designated as-1.For each sheet unit, the level number of the abutment flange unit on each direction can be stored with 8bit, four direction can be stored with 32bit up and down, and each pixel place need store maximum k sheet units, so all level number information can be stored in the texture of RGBA8 type of k and viewport formed objects.The method is an approximate algorithm accurately, the size that whether accurately depends on thresh Δ Z of adjacent sheet unit coupling, the suitable size of thresh Δ Z need to change according to size and the precision of model, can regulate the size of thresh Δ Z for different models to obtain more accurate result.
The 3rd step is carried out convolution and is finally calculated the shape description symbols apparent relief of multilayer tablet unit in GPU.In the present invention, use twice GPU image level to draw flow process successively to the n1 of every synusia unit, n2, k1, k2 carries out one dimension convolution on the x direction and the one dimension convolution on the y direction.
The result of first pass convolution utilizes the MRT technology to be stored in the texture of one group of floating type, for second time convolution.During convolution, for when anter unit, according to the abutment flange unit level number of previous step record, at first find the f of abutment flange unit on the left side on the x direction left1, and then find f left1the f of abutment flange unit on the left side left2, the like, can find a string connected sheet unit, there is no left abutment flange unit until arrive the border of convolution kernel or certain sheet unit; Just the weights of the attribute of each sheet unit and convolution kernel correspondence position can be multiplied each other in this process, and be added on convolution results.And then start to turn right from middle sheet unit and carry out same operation.Convolution on the y direction in like manner ,Xian Cong center up links every synusia unit and is weighted to convolution results simultaneously, and then down operates equally from centre.Finally, can apply the convolution results of each sheet unit of current pixel place in second time, calculate the shape description symbols of each sheet unit.
The 4th step is carried out multiple stylization drafting according to the shape description symbols of multi-disc unit.
This step can complete in second time sheet unit drafting processing in previous step simultaneously, realizes the concrete rendering intent of various effects.In the present invention, pass through in conjunction with method for drafting transparent, translucent effect, and the non-photorealistic rendering method of Apparent Relief shape description symbols, realized the multiple non-photorealistic rendering effect that can show model multilayer shape facility.General thought in the present invention is, for certain pixel, first calculate the color value of the feeling of unreality effect that its every synusia unit shows on this layer of surface, then according to drafting rule transparent, translucent effect, the color value of the feeling of unreality effect of each synusia unit of front and back is merged, finally obtain combining multilayer non-photorealistic rendering effect transparent, translucent effect.
Use Apparent Relief shape description symbols to realize that the method for stylize effect is according to drawing a texture that is called ARM (Apparent Relief Map) of style definition, and with the bivector of shape description symbols
Figure BDA0000397385980000141
as texture coordinate read texture value (
Figure BDA0000397385980000142
the value of each component is mapped to [0,1] from [1,1] and usings as texture coordinate), the texture value of reading can directly be drawn effect as stylization, also can be used as intermediate value, for realizing final stylize effect.
In the present invention, can, by the outstanding shape facility that represents model front and back multiple-level surface, make the user can better observe the structure of a model.A simple ARM of design in the present invention, this ARM is 1 in shape facility highlight (edge, the concavo-convex obvious place etc.) value of model, and be 0 in the smooth place of model surface value, so can give prominence to well the shape facility of model with this ARM, and filter out smooth part.For every synusia unit, use the texture value read from the ARM transparency α value as its color in the present invention, rgb value by predefined color as its color, what drew out the position that feature is outstanding like this is exactly opaque particular color, and does not need the position of prominent feature to draw out to be exactly transparent color fully; Then, the computing method of the α in drawing with transparent effect in the present invention-mixing, merge the NPR color of each synusia unit from back to front by depth order, obtain final drawing result.The transparent effect of the illumination of model own can also superpose in the present invention.
Also can strengthen by the method for outstanding shape facility the drafting of translucent effect in the present invention.Draw the translucent effect of model, used the shape facility of the highlighted nearest layer of surface of light tone in the present invention, and used the shape facility on black strengthening each layer of surface, back.When the simulation translucent effect, only consider the absorption of light in translucent object in the present invention, ignore dispersion effect.By Beer-Lambert law I a=exp (σ t, l) simulate the ambient light color of translucent phenomenon, wherein σ tbe absorption coefficient, l is the distance that light passes in the object medium, and l can try to achieve by the depth difference between cumulative every two adjacent lamina units.If consider the decay of incident ray at body surface, can use Schlick equation approximate simulation Fresnel coefficient: F t=1-(1-cos θ) 5, wherein θ is incident angle, accumulates each surperficial Fresnel coefficient and acts on environmental light brightness I acan simulate the Fresnel phenomenon.Finally the color at the surperficial shape dress of the color of translucent effect and each feature place is merged mutually to the translucent drafting effect of the shape facility that strengthened.
Can also realize by this system the artistic style drafting effect of other some transparent appearances in the present invention.Realized the cartoon effect of two kinds of transparent form in the present invention.Calculate the color of the cartoon effect of every synusia unit in the present invention, and then the method for α-mixing for the color value of each layer of cartoon effect is merged, the method acquisition of the available similar upper example of transparency α value of every synusia unit, because the cartoon effect place smooth at model surface is also coloured, so can being made as one, the lower limit of α value is greater than 0 value.
The first computational algorithm of improved multi-disc
In order to collect the sheet metamessage on the model multiple-level surface, and it is stored by depth order, uses for reference k-buffer[Bavoil2007 in the present invention] multi-disc unit algorithm thinking.The thought of K-buffer algorithm is, use multi-texturing target cache (the multiple render targets on GPU, MRTs) distribute a size for each pixel on viewport and be fixed as the array of k, but the internal storage location that comprises k reading and writing, can store the information of maximum k the sheet units in this pixel place.Concrete implementation method is that one group of texture is tied to frame buffer zone object (Framebuffer Object, FBO) as MRT, closes the polygon back side before the drafting geometric scene and rejects (CULL_FACE) and depth test (DEPTH_TEST); While drawing geometric scene, in the sheet unit tinter of GPU, the storage unit of k-buffer is read-revised-write operation (Read-Modify-Write, RMW): from the data of texture reads k-buffer, Update Table, then write back k-buffer to the form of FBO by data with the output color value.The application to sheet unit sequence by depth order for need as the order that realizes in the present invention independently Transparency Phenomenon and translucent phenomenon, can be used Insertion Sorting Algorithm to k-buffer in sheet unit tinter.First depth values all in k-buffer is initialized as to a possible maximal value before drawing, then draw geometric scene one time, the tram of in sheet unit tinter, new film unit being inserted to k-buffer by its depth value size, to keep the order arrangement from small to large according to depth value of sheet unit in k-buffer.So only need a geometric scene to draw, with regard to the information of k synusia unit before having collected in an orderly manner at most.Can in flow process is drawn in the aftertreatment of image level, merge the sheet unit of collecting subsequently, realize required drafting effect.
Although the k-buffer algorithm can complete collection and the sequence to multi-disc unit in how much levels of single pass are drawn, efficiency is very high, itself has a sheet unit read/write conflict problem, and causing drawing effect can make mistakes at some pixel place.This is because GPU has massive parallelism, in the k-buffer algorithmic procedure, when the thread parallel of a plurality of units at same pixel place is carried out, they are are just likely read and write (RMW) operation to the same memory location of texture video memory simultaneously, current GPU can't guarantee correct read-write order, so likely produce wrong result.The solution that Bavoil et al. provides in its paper is, before every frame is drawn, tri patch is arrived to the distance-taxis of viewpoint by it, and sequentially send into streamline with this, further, also tri patch can be packed in batches, every drafting is a collection of refreshes streamline No. one time, thereby reduces the probability that overlapping sheet unit carries out sheet unit coloration program simultaneously.But this method has just reduced the probability that read/write conflict occurs, does not have thorough head it off, and each frame needing on CPU to carry out sort algorithm, refreshes again streamline in batches, wasted the highly-parallel ability of GPU, makes and draws the efficiency degradation.
The present invention proposes the method for the first read/write conflict problem of a kind of k-buffer of solution sheet, the function of the atomic operation to the texture video memory that the inventive method is used OpenGL4.0 to support, improve sheet unit sequencer procedure, can thoroughly solve the sheet unit read/write conflict problem of k-buffer.This method adopts multistage depth test strategy, uses the atomic operation function to the texture video memory, is applicable to general OpenGL rendering pipeline.Up-to-date GLSL provides a series of atomic operation function, by texture object is bound " elementary area " (Image Unit), these functions can be carried out reading-revise-write operation of multiple atomicity to the texture video memory in coloration program.When a tinter thread is carried out atomic operation to a memory location, other tinter threads can't be accessed this position, until whole read-write operation completes.Therefore, the use atomic operation can guarantee the memory read-write conflict can not occur between them when the tinter of a plurality of units at a pixel place moves simultaneously, thereby thoroughly solves the sheet unit read/write conflict problem of k-buffer algorithm.
Concrete methods of realizing in the present invention is to use the imageAtomicMin function to improve the sheet unit sort algorithm process of k-buffer.The function of imageAtomicMin function is, read 32 integer data from a texel of texture video memory, with the supplemental characteristic of another 32 integers, compare, wherein the smaller writes back this texel position, then returns to the value of original storage in this texel; Whole operation is the process of an atomicity.Sheet unit depth value to be sorted is floating point type, yet atomic operation is only supported 32 integer data at present, deposit the texture video memory in so use the floatBitsToUint function that depth value is encoded into to 32 signless integers in the present invention, this encoded radio is the coded representation of single precision floating datum in internal memory, because sheet unit depth value is all non-negative floating number, so its magnitude relationship still remains unchanged after coding.
The present invention adopts the improved k-buffer algorithm based on multistage depth test strategy in GPU.1) first all initialization in k-buffer are called to a possible maximum depth value, because atomic operation is only supported 32 integer data, depth value z are encoded into to 32 signless integers; 2) rasterization stage is processed (the algorithm false code at each sheet unit place is as shown in algorithm 1) to each sheet unit, and the depth value of establishing current new film unit is z 0, by z 0successively with k-buffer in each depth value z of respective pixel position carry out ratio of integers, in k-buffer, the depth value file layout of respective pixel position is Linear array of the one dimension; 3) if z 0be greater than the depth value z stored in the currentitem one-dimension array of respective pixel position in k-buffer i, the depth value z stored in this array item iremain unchanged, use z 0the next item down z of continuation and one-dimension array element i+1relatively; So recycle ratio, until z 0be less than the depth value z of a certain kthe time, the depth value z of new film unit 0insert this array item position, and read the initial value z of this array item k, exchanged z 0with the array item z in one-dimension array kvalue; 4) continue with new z 0value and follow-up array element z k+1carry out ratio of integers, the value itself of storing in the Linear array of the one dimension due to this respective pixel position storage in k-buffer is sorted according to order from small to large, so the result of later each compare operation is all z 0be less than the z value of current number group element, so algorithm can exchange this two depth values; This step can instruct the array element that runs into a sky (being the rreturn value of the atomic operation maximum depth value while being initialization), or arrives the array end, and circulation finishes.5) if until circulation finishes all not find the position that can insert new film unit, full the and first depth value of new film of k-buffer is greater than all depth values of having deposited, and new film unit can not be stored into k-buffer; The end of described first tinter abandons this sheet unit simultaneously, no longer any information is write to frame buffer zone.
GPU sheet unit sort algorithm in the improvement k-buffer algorithm of algorithm 1 based on multistage depth test strategy
layout(size1x32)uniform volatile uimage2D KBuffer[K];
KBufferInsertSort(float NewFragmentDepth)
1 ivec2ImageCoord←ivec2(gl_FragCoord.xy);
2 uint Z←floatBitsToUint(NewFragmentDepth);
3 for i←0to K‐1
4 ZOld←imageAtomicMin(KBuffer[i],ImageCoord,Z);
5 if ZOld==MAX_INT
6 break;
7 end
8 Z←max(Z,ZOld);
9 end
10 discard;
Use the drafting of the improvement k-buffer algorithm based on multistage depth test strategy in the present invention, get k=8, front at most 8 synusia units (this is because the Image Unit maximum quantity of testing the GPU support of using is 8, and uses the method for atomic operation to preserve a synusia unit with an Image Unit) have been collected.As can be seen here, the pixel of sheet unit depth ordering mistake can not appear in k-buffer algorithm after improving by the use atomic operation again, and all pixels all obtain correct drawing result.
The Shape Feature Extraction algorithm
In the present invention, method is the hybrid method of geometric space and image space, at the geometric attribute of pretreatment stage computation model, then when drawing, at image space, detects shape facility, combines the advantage of two kinds of methods.With a shape description symbols, the shape information with the extraction model surface is described in the present invention.This method generates a shape description symbols Apparent Relief to each pixel on image, its calculating combines the information of the model space (object space) and image space (image space) simultaneously, be sight line relevant (view-dependent), and there is natively the characteristic of LOD (level-of-detail).Apparent Relief has only described the shape attribute of model surface, does not determine final drafting style.
Apparent Relief shape description symbols is defined as a bivector
Figure BDA0000397385980000171
direction the nature of concavity and convexity of model surface has been described; And
Figure BDA0000397385980000172
length the degree of crook of model surface has been described, be that sight line is relevant.
Figure BDA0000397385980000173
computation process divide three steps:
The first step is calculated in the model space direction be the nature of concavity and convexity of curved surface.At first algorithm calculates principal curvature of surface k1 and the k2 on triangle gridding summit, makes k1 and k2 correspond respectively to two coordinate axis, vector
Figure BDA0000397385980000175
direction be
Figure BDA0000397385980000176
direction.In order to ensure k1, k2 can correctly be interpolated into each pixel, gets k1 >=k2.Then also need be to k1 in image space, it is level and smooth that k2 carries out Gaussian convolution, so that they seamlessly transit on image:
k 1 * ( x , y ) = k 1 ( x , y ) ⊗ g ( x , y , σ ) k 2 * ( x , y ) = k 2 ( x , y ) ⊗ g ( x , y , σ ) - - - ( 1 )
The standard deviation that in formula, σ is Gaussian convolution core, controlled the size of level and smooth neighborhood of pixels; While realizing, the dimensional Gaussian convolution is broken down into again two one dimension Gaussian convolutions, thereby reduces the time complexity of algorithm:
g ( x , y , σ ) = g ( x , σ ) ⊗ g ( y , σ ) - - - ( 2 )
Second step calculates at image space
Figure BDA0000397385980000182
length be the degree of crook of curved surface.The thought of algorithm is that computing method is to the rate of change in neighborhood of pixels in image space, and the degree of crook therefore calculated is that sight line is relevant.At first, calculate n1, the n2(normal direction is transformed into the first two component after view coordinate) gradient:
▿ n 1 ( x , y ) = n 1 ( x , y ) ⊗ g x ( x , y , σ ) n 1 ( x , y ) ⊗ g y ( x , y , σ ) ▿ n 2 ( x , y ) = n 2 ( x , y ) ⊗ g x ( x , y , σ ) n 2 ( x , y ) ⊗ g y ( x , y , σ ) - - - ( 3 )
G wherein x(x, y, σ) and g y(x, y, σ) is respectively the Gauss's partial derivative convolution kernel on x direction and y direction, plays partial derivative and the level and smooth effect of calculating simultaneously; σ is standard deviation, gets the value equated with σ in (1); Dimensional Gaussian partial derivative convolution also can be broken down into two one dimension convolution, thereby reduces the time complexity of algorithm:
g x ( x , y , σ ) = g , ( x , σ ) ⊗ g ( y , σ ) g y ( x , y , σ ) = g ( x , σ ) ⊗ g , ( y , σ ) - - - ( 4 )
Next, in conjunction with
Figure BDA00003973859800001811
with
Figure BDA00003973859800001812
obtain
Figure BDA0000397385980000184
length, the order
▿ n x = ▿ n 1 · x ▿ n 2 · x ▿ n y = ▿ n 1 · y ▿ n 2 · y N = N 11 N 12 N 21 N 22 = ▿ n x · ▿ n x ▿ n x · ▿ n y ▿ n y · ▿ n x ▿ n y · ▿ n y - - - ( 5 )
Get larger one of absolute value in two eigenwerts of N, using this absolute value as L.
The 3rd step combination
Figure BDA0000397385980000186
direction
Figure BDA0000397385980000187
and length L, obtain
Figure BDA0000397385980000188
A shape description symbols has been calculated at Apparent Relief algorithm each pixel place on image, for describing the shape information (comprising nature of concavity and convexity and degree of crook) of this pixel place model surface, yet (specifically can be referring to VERGNE R., BARLA P., GRANIER X., SCHLICK C.:Apparent relief:a shape descriptor for stylized shading.In Proc.of NPAR (2008), ACM, pp.23 – 29.) only calculated from the shape information of the nearest layer of surface of viewpoint, do not calculated the shape information on other each layer of surface.In conjunction with Apparent Relief and the improvement k-buffer algorithm based on multistage depth test strategy, for a shape description symbols respectively calculates in each sheet unit at each pixel place on image, thereby obtain the shape information on the model multiple-level surface in the present invention.

Claims (14)

1. a GPU goes up the method for visualizing that the multilayer shape facility merges, and its step comprises:
1) treat model or the scene that visual polygonal mesh means, obtain the principal curvatures k1 on each summit of the grid of grid model intermediate cam described in any observation space, k2;
2) according to the improved k-buffer algorithm based on multistage depth test strategy, texture is bound to elementary area, by carrying out first pass GPU, draw for how much, realize collecting the sheet metamessage on multiple-level surface in described grid model, described metamessage sorted and depth value z is deposited in k-buffer (z) by the atom compare operation in order simultaneously;
3) according to the improvement k-buffer algorithm based on multistage depth test strategy, texture is bound to elementary area, draw for how much by carrying out second time GPU, realize again collecting the sheet metamessage on multiple-level surface in described grid model; This sheet unit position in k-buffer of item judgement equated by search depth value z in described k-buffer (z), again by the first two component n1 of normal direction in the observation space of sheet unit described in this step, n2, principal curvatures k1, k2 deposits k-buffer (n1 in, n2, k1, k2) relevant position complete second time GPU and draw for how much;
4) draw to identify described k-buffer (n1 by the GPU image level in GPU, n2, k1, k2) in four of the upper and lower, left and right geometric jacquard patterning unit surface abutment flange unit of each sheet unit respectively the place in k-buffer the layering level number and four level numbers are kept in texture, but the sheet unit that links the discontinuous adjacency on geometry of depth value z sorting position in described k-buffer obtains the sheet unit after every layer of link;
5) in GPU, adopt twice GPU image level to draw successively the n1 to every layer of link rear panel unit, n2, k1, k2 carries out convolution on the x direction and the convolution on the y direction, calculates the shape description symbols of multilayer tablet unit;
6) result of extracting according to the shape description symbols of multilayer tablet unit is carried out the feeling of unreality of multilayer tablet unit/stylization drafting, realizes that various effects play up rear output visualization result.
2. the method for visualizing that the upper multilayer shape facility of GPU as claimed in claim 1 merges, is characterized in that, the specific implementation step in GPU of the improvement k-buffer algorithm based on multistage depth test strategy is as follows:
1) first all initialization in k-buffer are called to a possible maximum depth value, depth value z is encoded into to 32 signless integers;
2) rasterization stage is processed each sheet unit, and the depth value of establishing current new film unit is z 0, in k-buffer, the depth value file layout of respective pixel position is Linear array of the one dimension, by z 0successively with k-buffer in each depth value z of respective pixel position carry out ratio of integers, according to different comparative results, take z 0different exchanging policies with array item z in one-dimension array;
3) if until circulation finishes all not find the position that can insert new film unit, full the and first depth value of new film of k-buffer is greater than all depth values of having deposited, and new film unit can not be stored into k-buffer;
4) end of described first tinter abandons this sheet unit simultaneously, no longer any information is write to frame buffer zone.
3. the method for visualizing that the upper multilayer shape facility of GPU as claimed in claim 2 merges, is characterized in that, according to different comparative results, takes z 0as follows with the different exchanging policies of array item z in one-dimension array:
1) if z 0be greater than the depth value z stored in the currentitem Linear array of the one dimension of respective pixel position in k-buffer i, the depth value z stored in this array item iremain unchanged;
2) use z 0the next item down z of continuation and one-dimension array element i+1relatively; So recycle ratio, until z 0be less than the depth value z of a certain kthe time, the depth value z of new film unit 0inserted the initial value z that this array item is read in this array item position k, exchanged z 0with the array item z in one-dimension array kvalue;
3) continue with new z 0value and follow-up array element z k+1carry out ratio of integers, the result of later each compare operation is all z 0be less than the z value of current number group element, exchange this two depth values.
4. the method for visualizing that the upper multilayer shape facility of GPU as claimed in claim 1 merges, it is characterized in that, four of the upper and lower, left and right geometric jacquard patterning unit surface abutment flange unit that in described step 4), the GPU image level draws to identify each sheet unit respectively the layering level number in k-buffer and concrete operation method that these four level numbers are kept in texture as follows:
1) draw the rectangle of a viewport size, calculate the level number of four geometric jacquard patterning unit surface abutment flange units of each sheet unit in the k-buffer that mates current pixel in sheet unit tinter;
2) coupling adopts approximation method, sets a depth difference threshold value thresh Δ Z, certain sheet unit on neighbor and when anter unit depth difference while being less than this threshold value, just think that these two sheet units are connected on described grid model surface;
3), if there is plural unit at the neighbor place and is less than thresh Δ Z when the depth difference of anter unit, one of desirable depth difference minimum or level number are immediate one; If do not have the depth difference of sheet unit and this sheet unit to be less than thresh Δ Z, think that this sheet unit does not have an abutment flange unit this side up, i.e. its profile place in grid model, level number is designated as-1;
4) for each sheet unit, the level number of the abutment flange unit on each direction can be stored with 8bit, and four direction can be stored with 32bit up and down, and each pixel place need store maximum k sheet units, uses the MRT technology that they are kept in one group of texture.
5. the method for visualizing that the upper multilayer shape facility of GPU as claimed in claim 1 merges, is characterized in that, in described step 5), the step of carrying out respectively one dimension convolution on the x direction and the one dimension convolution on the y direction is as follows:
1) first pass during convolution, for when the geometric space abutment flange unit level number of anter primitive root according to the previous step record, at first finds the f of abutment flange unit on the left side on the x direction left1, and then find f left1the f of abutment flange unit on the left side left2;
2) according to step 1), to find a string connected sheet unit, there is no left abutment flange unit until arrive the border of convolution kernel or certain sheet unit, utilize the MRT technology to be stored in the texture of one group of floating type the result of first pass convolution, for second time convolution;
3) the ,Xian Cong center up links every synusia unit and is weighted to convolution results simultaneously during the convolution on the y direction, and then down operates equally from centre;
4) adopt the convolution results of each sheet unit of current pixel place in second time, calculate the shape description symbols of each sheet unit.
6. the method for visualizing that the upper multilayer shape facility of GPU as claimed in claim 1 merges is characterized in that described shape description symbols Apparent Relief is a bivector
Figure FDA0000397385970000031
direction the nature of concavity and convexity on grid model surface has been described; And
Figure FDA0000397385970000032
length the degree of crook on grid model surface has been described.
7. the method for visualizing that the upper multilayer shape facility of GPU as claimed in claim 6 merges, is characterized in that, described computation process as follows:
1) in the grid model space, calculate
Figure FDA0000397385970000034
direction
Figure FDA0000397385970000035
be the nature of concavity and convexity of curved surface, at first algorithm calculates principal curvature of surface k1 and the k2 on triangle gridding summit, makes k1 and k2 correspond respectively to two coordinate axis, vector
Figure FDA0000397385970000036
direction be direction;
2) at image space, calculate
Figure FDA0000397385970000038
length L be the degree of crook of curved surface, in image space, computing method is to the rate of change in neighborhood of pixels, the degree of crook calculated is that sight line is relevant;
3) combination
Figure FDA0000397385970000039
direction
Figure FDA00003973859700000310
and length L, obtain
Figure FDA00003973859700000311
8. the method for visualizing that the upper multilayer shape facility of GPU as claimed in claim 1 merges, is characterized in that, the feeling of unreality/stylization of described multilayer is plotted in second time sheet unit drafting processing and completes simultaneously.
9. the method for visualizing that the upper multilayer shape facility of GPU as claimed in claim 1 merges, it is characterized in that, by the non-photorealistic rendering method of the method for drafting in conjunction with transparent or translucent effect or cartoon effect and Apparent Relief shape description symbols, realize that various effects play up rear output visualization result.
10. the method for visualizing that the upper multilayer shape facility of GPU as claimed in claim 9 merges, is characterized in that, uses Apparent Relief shape description symbols to realize that the method for stylize effect is as follows:
1) according to drawing a texture that is called ARM of style definition, and with the bivector of shape description symbols
Figure FDA00003973859700000312
read the texture value handle as texture coordinate
Figure FDA00003973859700000313
the value of each component is mapped to [0,1] from [1,1] and usings as texture coordinate;
2) texture value read can directly be drawn effect as stylization, also can be used as intermediate value, for realizing final stylize effect.
11. the method for visualizing that the upper multilayer shape facility of GPU as claimed in claim 10 merges, it is characterized in that, described ARM is 1 in the shape facility highlight value of grid model, and be 0 in the smooth place on grid model surface value, so can give prominence to well the shape facility of grid model with this ARM, and filter out smooth part.
12. the method for visualizing that the upper multilayer shape facility of GPU as claimed in claim 10 merges, it is characterized in that, for every synusia unit, the texture value of reading from ARM is as the transparency α value of its color, rgb value by predefined color as its color, what drew out the position that described feature is outstanding is exactly opaque particular color, and does not need the position of prominent feature to draw out to be exactly transparent color fully; Then adopt the computing method of the α of transparent effect in drawing-mixing, merge from back to front the NPR color of each synusia unit by depth order, obtain final drawing result.
13. the method for visualizing that the upper multilayer shape facility of GPU as claimed in claim 9 merges, is characterized in that, the drafting of the method strengthening translucent effect of outstanding shape facility for described translucent effect:
1) use the shape facility of the highlighted nearest layer of surface of light tone, and use the shape facility on black strengthening each layer of surface, back;
2), when the simulation translucent effect, simulate the ambient light color of translucent phenomenon by the Beer-Lambert law;
3) use Schlick equation approximate simulation Fresnel coefficient to characterize the decay of incident ray at body surface: finally the color at the surperficial shape dress of the color of translucent effect and each feature place to be merged mutually to the translucent drafting effect of the shape facility that strengthened.
14. the method for visualizing that the upper multilayer shape facility of GPU as claimed in claim 9 merges, it is characterized in that, the color of the cartoon effect by calculating every synusia unit, and then the method for α-mixing for the color value of each layer of cartoon effect is merged, the texture value of reading from ARM, as the first transparency α value of every synusia of its color, is realized the cartoon effect of transparent form.
CN201310488566.9A 2013-10-17 2013-10-17 The method for visualizing that on a kind of GPU, multilayer shape facility merges Active CN103500463B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310488566.9A CN103500463B (en) 2013-10-17 2013-10-17 The method for visualizing that on a kind of GPU, multilayer shape facility merges

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310488566.9A CN103500463B (en) 2013-10-17 2013-10-17 The method for visualizing that on a kind of GPU, multilayer shape facility merges

Publications (2)

Publication Number Publication Date
CN103500463A true CN103500463A (en) 2014-01-08
CN103500463B CN103500463B (en) 2016-04-27

Family

ID=49865666

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310488566.9A Active CN103500463B (en) 2013-10-17 2013-10-17 The method for visualizing that on a kind of GPU, multilayer shape facility merges

Country Status (1)

Country Link
CN (1) CN103500463B (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104637089A (en) * 2015-02-15 2015-05-20 腾讯科技(深圳)有限公司 Three-dimensional model data processing method and device
WO2016000129A1 (en) * 2014-06-30 2016-01-07 Intel Corporation Adaptive partition mechanism with arbitrary tile shape for tile based rendering gpu architecture
CN106803278A (en) * 2016-12-07 2017-06-06 珠海金山网络游戏科技有限公司 A kind of translucent layer sorting method and system of virtual portrait
CN106846452A (en) * 2016-12-23 2017-06-13 北京大学 For the optimization method for postponing coloring antialiased rendition on a kind of GPU
CN106952328A (en) * 2016-12-28 2017-07-14 北京大学 The method for drafting and system of a kind of Large-scale Macro virtual scene
CN107426559A (en) * 2016-05-24 2017-12-01 汤姆逊许可公司 Method, apparatus and stream for immersion video format
CN108475327A (en) * 2016-01-13 2018-08-31 虞晶怡 three-dimensional acquisition and rendering
CN111145085A (en) * 2019-12-26 2020-05-12 上海霁目信息科技有限公司 Method of sorting fragments and method, system, apparatus and medium for model rasterization
CN111161378A (en) * 2019-12-27 2020-05-15 北京金山安全软件有限公司 Color filling method and device and electronic equipment
CN115473957A (en) * 2021-06-10 2022-12-13 荣耀终端有限公司 Image processing method and electronic equipment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020075273A1 (en) * 2000-12-19 2002-06-20 Intel Corporation Method & apparatus for adding real-time primitives
CN101046888A (en) * 2006-03-30 2007-10-03 株式会社东芝 Rendering apparatus and method, and shape data generation apparatus and method
CN101984467A (en) * 2010-11-10 2011-03-09 中国科学院自动化研究所 Non-photorealistic rendering method for three-dimensional network model with stylized typical lines
CN102737097A (en) * 2012-03-30 2012-10-17 北京峰盛博远科技有限公司 Three-dimensional vector real-time dynamic stacking technique based on LOD (Level of Detail) transparent textures

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020075273A1 (en) * 2000-12-19 2002-06-20 Intel Corporation Method & apparatus for adding real-time primitives
CN101046888A (en) * 2006-03-30 2007-10-03 株式会社东芝 Rendering apparatus and method, and shape data generation apparatus and method
CN101984467A (en) * 2010-11-10 2011-03-09 中国科学院自动化研究所 Non-photorealistic rendering method for three-dimensional network model with stylized typical lines
CN102737097A (en) * 2012-03-30 2012-10-17 北京峰盛博远科技有限公司 Three-dimensional vector real-time dynamic stacking technique based on LOD (Level of Detail) transparent textures

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
XIN HUANG,SHENG LI,GUOPING WANG: "A GPU Based Interactive Modeling Approach to Designing Fine Level Features", 《GRAPHICS INTERFACE CONFERENCE 2007》 *
唐敏,SHANG-CHING CHOU,董金祥: "GPU上的非侵入式风格化渲染", 《计算机辅助设计与图形学学报》 *
李胜,黄鑫,汪国平: "基于GPU的视点相关自适应细分", 《计算机辅助设计与图形学学报》 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016000129A1 (en) * 2014-06-30 2016-01-07 Intel Corporation Adaptive partition mechanism with arbitrary tile shape for tile based rendering gpu architecture
CN104637089A (en) * 2015-02-15 2015-05-20 腾讯科技(深圳)有限公司 Three-dimensional model data processing method and device
CN108475327A (en) * 2016-01-13 2018-08-31 虞晶怡 three-dimensional acquisition and rendering
CN107426559A (en) * 2016-05-24 2017-12-01 汤姆逊许可公司 Method, apparatus and stream for immersion video format
CN106803278A (en) * 2016-12-07 2017-06-06 珠海金山网络游戏科技有限公司 A kind of translucent layer sorting method and system of virtual portrait
CN106803278B (en) * 2016-12-07 2020-09-04 珠海金山网络游戏科技有限公司 Virtual character semi-transparent layered sorting method and system
CN106846452B (en) * 2016-12-23 2019-12-03 北京大学 For the optimization method of delay coloring antialiased rendition on a kind of GPU
CN106846452A (en) * 2016-12-23 2017-06-13 北京大学 For the optimization method for postponing coloring antialiased rendition on a kind of GPU
CN106952328A (en) * 2016-12-28 2017-07-14 北京大学 The method for drafting and system of a kind of Large-scale Macro virtual scene
CN106952328B (en) * 2016-12-28 2019-11-19 北京大学 A kind of method for drafting and system of Large-scale Macro virtual scene
CN111145085A (en) * 2019-12-26 2020-05-12 上海霁目信息科技有限公司 Method of sorting fragments and method, system, apparatus and medium for model rasterization
CN111145085B (en) * 2019-12-26 2023-09-22 上海杰图天下网络科技有限公司 Method for sorting primitives and method, system, device and medium for model rasterization
CN111161378A (en) * 2019-12-27 2020-05-15 北京金山安全软件有限公司 Color filling method and device and electronic equipment
CN111161378B (en) * 2019-12-27 2023-10-17 北京金山安全软件有限公司 Color filling method and device and electronic equipment
CN115473957A (en) * 2021-06-10 2022-12-13 荣耀终端有限公司 Image processing method and electronic equipment
CN115473957B (en) * 2021-06-10 2023-11-14 荣耀终端有限公司 Image processing method and electronic equipment

Also Published As

Publication number Publication date
CN103500463B (en) 2016-04-27

Similar Documents

Publication Publication Date Title
CN103500463B (en) The method for visualizing that on a kind of GPU, multilayer shape facility merges
Kaufman et al. Overview of volume rendering.
Kanamori et al. GPU‐based fast ray casting for a large number of metaballs
Sun et al. Interactive relighting of dynamic refractive objects
Kipfer et al. GPU construction and transparent rendering of iso-surfaces
CN101373541B (en) Method and apparatus for drafting medical image body
Sundén et al. Image plane sweep volume illumination
Livnat et al. Interactive point-based isosurface extraction
CN101763649A (en) Method for drawing enhanced model contour surface point
Johnson et al. The irregular z-buffer and its application to shadow mapping
Chu et al. GL4D: A GPU-based architecture for interactive 4D visualization
Greß et al. Object-space interference detection on programmable graphics hardware
Sanzharov et al. Level of detail for precomputed procedural textures
CN104966313B (en) The geometrical shadow drawing method that triangle is rebuild
Vyatkin Method of binary search for image elements of functionally defined objects using graphics processing units
Boudon et al. Survey on computer representations of trees for realistic and efficient rendering
Leung et al. Conservative sampling of solids in image space
Neophytou et al. GPU-Accelerated Volume Splatting With Elliptical RBFs.
Goradia et al. Gpu-based ray tracing of splats
Adams et al. Boolean operations on surfel-bounded solids using programmable graphics hardware
Wei et al. Real-time ray casting of algebraic B-spline surfaces
Kalbe et al. High-quality rendering of varying isosurfaces with cubic trivariate C 1-continuous splines
CN117058301B (en) Knitted fabric real-time rendering method based on delayed coloring
Kaufman et al. Volume visualization and volume graphics
Li An automatic rendering method of line strokes for Chinese landscape painting

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20200721

Address after: 830-3, 8 / F, No. 8, Sijiqing Road, Haidian District, Beijing 100195

Patentee after: Beijing weishiwei Information Technology Co.,Ltd.

Address before: 100871 Haidian District the Summer Palace Road,, No. 5, Peking University

Patentee before: Peking University

TR01 Transfer of patent right