How can I compute the volume under a three class ROC surface

2 次查看(过去 30 天)
Hi, I am working on a three class diagnosis problem where I need to compute the volume under a three class receiver operator characteristic (ROC) surface. An example of such a surface is provided with the link below.
I am having problem with the way of computing the volume under this non-uniform complex surface. As a resource, I have a set of triplets (x,y,z points), but these are not organized as meshgrid.
If anyone can provide me a solution of this problem,this would be really helpful for me. Thanks in advance.

采纳的回答

Roger Stafford
Roger Stafford 2013-8-5
编辑:Roger Stafford 2013-8-6
Based on what I see in your link, your ROC volume can be subdividing into individual five-faced polyhedrons each of whose base is a triangle in the x-y plane, whose three sides are trapezoids orthogonal to this plane and whose top is another (slanted) triangle. Your volume is the sum of the volumes of these separate polyhedrons.
Call the cartesian coordinates of the vertices of a top triangle (x1,y1,z1), (x2,y2,z2), and (x3,y3,z3) where the ordering from points 1 to 2 to 3 is counterclockwise with respect to the x-y plane. Then the volume of the polyhedron underneath this top triangle is:
V = 1/6*det([x1,x2,x3;y1,y2,y3;1,1,1])*(z1+z2+z3)
(The area of its triangular base is 1/2*det([x1,x2,x3;y1,y2,y3;1,1,1]) and the average height is 1/3*(z1+z2+z3).) Note that if the ordering of the three points is clockwise, this expression will be the negative of the actual volume.
Thus, your job is now to determine the coordinates of all those points in the surface.
(Corrected)
  1 个评论
Roger Stafford
Roger Stafford 2013-8-6
Note that I corrected the array in the determinant which had an erroneous comma in place of a semicolon.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Surface and Mesh Plots 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by