示例#1
0
        public CarSnapshotGraph Histogram(Bitmap bitmap)
        {
            CarSnapshotGraph graph = new CarSnapshotGraph(this);

            for (int y = 0; y < bitmap.Height; y++)
            {
                float counter = 0;
                for (int x = 0; x < bitmap.Width; x++)
                {
                    counter += GetBrightness(bitmap, x, y);
                }
                graph.AddPeak(counter);
            }
            return(graph);
        }
示例#2
0
        private List <Graph.Peak> ComputeGraph()
        {
            if (graphHandle != null)
            {
                return(graphHandle.Peaks);
            }
            Bitmap bitmap = DuplicateBitmap(Image);

            VerticalEdgeBitmap(bitmap);
            Thresholding(bitmap);

            graphHandle = Histogram(bitmap);
            graphHandle.RankFilter(carSnapshotGraphRankFilter);
            graphHandle.ApplyProbabilityDistributor(Distributor);
            graphHandle.FindPeaks(numberOfCandidates);
            return(graphHandle.Peaks);
        }