[ Concave Hull ]

1. Introduction
dkuCH is a software for making concave hull from convex hull. The goal of this algorithm is presenting precise vertexes from dataset. It is operated on console window and make the output data which is a form of value chart.

content3
Figure1. Convex hull and Concave hull

2. Download
dkuCH.zip

The zip file contents:
Source Code
- dkuCH.java
- CombinationGenerator.java
- Simeq.java
Class File
- dkuCH.class
- CombinationGenerator.class
- Simeq.class
Qhull Executable File
- qconvex.exe
In order to make convex hull list, qconvex.exe is used. Source code and introduction of qhull is provided on the web site of qhull. http://www.qhull.org/

3. Usage
More informations are included in ReadMe.txt about input data & output data.

Format of Execution:
java dkuCH [option] ([convex list file]) [original data file] [output file]

Options:
-p using original data file
you have to use this option when you have only dataset. we will make convex hull list by qhull algorithm. and then make concave hull. the options of qhull algorithm is fixed.

-f using existing convex list file
if you already have convex hull list via MATLAB or another methods, you can use this option. we will make concave hull.

Examples
java dkuCH -p 2d_dataset.txt concaveResult
java dkuCH -p 2d_dataset.txt concaveResult 0.9
java dkuCH -f convexList.txt 2d_dataset.txt concaveResult
java dkuCH -f convexList.txt 2d_dataset.txt concaveResult 1.2

Sample Dataset

Original dataset | Concave List
2d_dataset | 2d_output_ccvList
3d_dataset | 3d_output_ccvList
4d_dataset | face=Verdana>4d_output_ccvList




The Degree of Concaveness

(dkuCH_concaveness)

1. Introduction

The degree of concaveness is calculated based on the difference between the convex hull and concave hull. the red area between the convex hull and concave hull implies concaveness of the dataset. The concaveness measure CM is the ratio of convex hull and concave hull:

content3
Figure2. The example of concaveness
CM (c) = 0.2242

The concaveness graph is a two-dimensional graph that shows the concaveness of each ��edge�� of the convex hull. In the graph, the x axis contains the edges of the concave hull and the y axis expresses the degree of concaveness for each edge.

content3
Figure3. The example of concaveness graph

2. Download
dkuCH_Concaveness.zip

3. Usage
Format of Excution:
java dkuCH_Concaveness [option] ([convex list file]) [original data file] [output file] ([Threshold])

Options: same as above
-p using original data file
you have to use this option when you have only dataset. we will make convex hull list by qhull algorithm. and then make concave hull. the options of qhull algorithm is fixed.

-f using existing convex list file
if you already have convex hull list via MATLAB or another methods, you can use this option. we will make concave hull.

Examples same as above
java dkuCH_concaveness -p 2d_dataset.txt concaveResult
java dkuCH_concaveness -p 2d_dataset.txt concaveResult 0.9
java dkuCH_concaveness -f convexList.txt 2d_dataset.txt concaveResult
java dkuCH_concaveness -f convexList.txt 2d_dataset.txt concaveResult 1.2

Sample Dataset same as above

Original dataset | Concave List
2d_dataset | 2d_output_ccvList
3d_dataset | 3d_output_ccvList
4d_dataset | 4d_output_ccvList

4. Citation Request:

Jinseo Park, Sejong Oh, A new concave hull algorithm and concaveness measure for n-dimensional datasets, journal of information science and engineering.