Skip to content

Commit b2f36b0

Browse files
committed
Improve the ItemReceiveDetector.
1 parent 724f24c commit b2f36b0

File tree

2 files changed

+28
-0
lines changed

2 files changed

+28
-0
lines changed

SerialPrograms/Source/PokemonLZA/Inference/PokemonLZA_DialogDetector.cpp

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -338,12 +338,39 @@ bool BlueDialogDetector::detect(const ImageViewRGB32& screen){
338338
ItemReceiveDetector::ItemReceiveDetector(Color color, VideoOverlay* overlay)
339339
: m_color(color)
340340
, m_overlay(overlay)
341+
, m_top(0.309013, 0.719466, 0.418455, 0.015267)
341342
, m_arrow_box(0.718648, 0.875728, 0.034896, 0.056311)
342343
{}
343344
void ItemReceiveDetector::make_overlays(VideoOverlaySet& items) const{
345+
items.add(m_color, m_top);
344346
items.add(m_color, m_arrow_box);
345347
}
346348
bool ItemReceiveDetector::detect(const ImageViewRGB32& screen){
349+
ImageStats top = image_stats(extract_box_reference(screen, m_top));
350+
if (top.average.sum() > 250){
351+
return false;
352+
}
353+
354+
do{
355+
// We will probably need to add more color ratios here later.
356+
if (is_solid(top, {0.153583, 0.245751, 0.600666}, 0.25, 40)){
357+
break;
358+
}
359+
#if 0
360+
if (is_solid(
361+
extract_box_reference(screen, m_top),
362+
{0, 0.134207, 0.865793},
363+
40
364+
)){
365+
break;
366+
}
367+
#endif
368+
369+
m_last_detected_box.reset();
370+
// cout << "not solid" << endl;
371+
return false;
372+
}while (false);
373+
347374
double screen_rel_size = (screen.height() / 1080.0);
348375
double screen_rel_size_2 = screen_rel_size * screen_rel_size;
349376

SerialPrograms/Source/PokemonLZA/Inference/PokemonLZA_DialogDetector.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,7 @@ class ItemReceiveDetector : public StaticScreenDetector{
129129

130130
const Color m_color;
131131
VideoOverlay* m_overlay;
132+
const ImageFloatBox m_top;
132133
const ImageFloatBox m_arrow_box;
133134

134135
ImageFloatBox m_last_detected;

0 commit comments

Comments
 (0)