Как найти площадь яблока

One way to do this is to use DominantColors as follows.

im = Import["http://pngimg.com/upload/small/apple_PNG12438.png"];
res = DominantColors[im, Automatic, {"Count", "Color"}]

enter image description here

To be sure if the reddish color is indeed the eatable part of the apple check this.

eatable=DeleteSmallComponents@First@DominantColors[i, Automatic, "CoverageImage"]

enter image description here

Now the exact eatable part can be recovered as the first entry of the output.

DominantColors[eatable, Automatic, {"Count", "Color"}]

{152709, 109435}

Now what the OP wanted!

positions = ImageValuePositions[ColorNegate@EdgeDetect@eatable, 0];
apple = Graphics[
   FilledCurve[Line[positions[[Last@FindShortestTour[positions]]]]]] //
   DiscretizeGraphics[#, MaxCellMeasure -> 0.1] &

enter image description here

And we can get the area..

{Area[apple], NIntegrate[1, {x, y} [Element] apple]}

{152615.,152615.}

But who eats a 2D apple..

But we can also make a 3D apple and calculate how much surface we need to munch.

pts = positions[[Last@FindShortestTour[positions]]];
par = BSplineFunction[ExponentialMovingAverage,TranslationTransform[-Mean@pts] /@ pts, .25],
SplineClosed -> True, SplineDegree -> 2];
ap = RevolutionPlot3D[{First@par[t], Last@par[t], t}, {t, 0, 1},RevolutionAxis -> {0, 1, 0},
PlotPoints -> 60, MaxRecursion -> 3,Mesh -> None, Boxed -> False, Axes->False];
appleColor = res[[1, 2]];
apple3D = DiscretizeGraphics[
  Cases[Normal@ap, _GraphicsGroup, -1][[1]],
  MeshCellStyle -> {{2, All} -> 
     Directive[res[[1, 2]], Specularity[White, 20], 
      Glow[Darker[appleColor, .5]], Lighting -> "Neutral"],
    {1, All} -> Directive[Thin, Darker@res[[1, 2]]]}
  ]

enter image description here

And here goes the surface/munching area with some dimensional info..

{RegionDimension@apple3D,RegionEmbeddingDimension@apple3D,IntegerPart[RegionMeasure@apple3D]}

{2, 3, 1450102}

  • Физика

Предыдущий вопрос

Следующий вопрос


zeropat20
4 года назад

Ответ

Ответ дан

thebestamigo

надеюсь хоть как-то помогла

Ответы и объяснения

  • zeropat20

Не тот ответ, который тебе нужен?

Найди нужный


Физика,


вопрос задал zeropat20,


5 лет назад

Ответы на вопрос

Ответил thebestamigo





0

надеюсь хоть как-то помогла

Приложения:

Предыдущий вопрос

Следующий вопрос

Новые вопросы

Математика,
9 месяцев назад

СРОЧНО!!!!!!ОЧЕНЬ НАДО БЕЗ ОБЪЯСНЕНИЙ МАКСИМАЛЬНО БЫСТРО!!!!

Литература,
9 месяцев назад

Написать мини-сочинение: что есть детство в понимании Л.Н.Толстого?​ (минимум 70 слов)…

Алгебра,
5 лет назад

раздложите на множатели 1)х^3-100х…

География,
5 лет назад

Характеристика ЮАР? Географическая и экономическая…

Алгебра,
7 лет назад

х квадрат – ху + 0,25 в квадрате при х=-16 у=-22…

Математика,
7 лет назад

на детской площадке отдыхали 25 детей и 16 взрослых. после обеда осталось 28 человек. сколько человек покинули площадку до обеда.

OBRAZOVALKA.COM

OBRAZOVALKA.COM – образовательный портал
Наш сайт это площадка для образовательных консультаций, вопросов и ответов для школьников и студентов .

  • Наша доска вопросов и ответов в первую очередь ориентирована на школьников и студентов из России и стран СНГ, а также носителей русского языка в других странах.
  • Для посетителей из стран СНГ есть возможно задать вопросы по таким предметам как Украинский язык, Белорусский язык, Казакхский язык, Узбекский язык, Кыргызский язык.
  • На вопросы могут отвечать также любые пользователи, в том числе и педагоги.


    Консультацию по вопросам и домашним заданиям может получить любой школьник или студент.

    Добавить комментарий