diff --git a/ArcadeReader.java b/ArcadeReader.java index e3f42e3..d288478 100644 --- a/ArcadeReader.java +++ b/ArcadeReader.java @@ -59,6 +59,6 @@ public class ArcadeReader { * */ public static void retrieveData(Path img) { - new SoundVoltexReader().interpretBoxes(img); + new LoveLiveReader().interpretBoxes(img); } } diff --git a/lovelive10.png b/lovelive10.png new file mode 100644 index 0000000..dae8605 Binary files /dev/null and b/lovelive10.png differ diff --git a/lovelive11.png b/lovelive11.png new file mode 100644 index 0000000..d7718ce Binary files /dev/null and b/lovelive11.png differ diff --git a/lovelive12.png b/lovelive12.png new file mode 100644 index 0000000..d0bdc3d Binary files /dev/null and b/lovelive12.png differ diff --git a/lovelive3.png b/lovelive3.png new file mode 100644 index 0000000..1d8b3ac Binary files /dev/null and b/lovelive3.png differ diff --git a/lovelive4.png b/lovelive4.png new file mode 100644 index 0000000..3a29908 Binary files /dev/null and b/lovelive4.png differ diff --git a/lovelive5.png b/lovelive5.png new file mode 100644 index 0000000..755d94e Binary files /dev/null and b/lovelive5.png differ diff --git a/lovelive6.png b/lovelive6.png new file mode 100644 index 0000000..44ef40e Binary files /dev/null and b/lovelive6.png differ diff --git a/lovelive7.png b/lovelive7.png new file mode 100644 index 0000000..96c7b78 Binary files /dev/null and b/lovelive7.png differ diff --git a/lovelive8.png b/lovelive8.png new file mode 100644 index 0000000..48a7374 Binary files /dev/null and b/lovelive8.png differ diff --git a/lovelive9.png b/lovelive9.png new file mode 100644 index 0000000..80d4f13 Binary files /dev/null and b/lovelive9.png differ diff --git a/readers/DDRReader.java b/readers/DDRReader.java index 3a0e3aa..1b172ca 100644 --- a/readers/DDRReader.java +++ b/readers/DDRReader.java @@ -169,8 +169,8 @@ public class DDRReader extends Reader{ ImageIO.write(cutImg,"png",output.toFile()); String dataString = readAllBoxes(output); String[] data = dataString.split(Pattern.quote("\n")); - String[] ja_data = data[0].split(Pattern.quote(",")); - String[] en_data = data[2].split(Pattern.quote(",")); + String[] ja_data = parseOutCommas(data[0]).split(Pattern.quote(",")); + String[] en_data = parseOutCommas(data[2]).split(Pattern.quote(",")); trimAllData(ja_data); trimAllData(en_data); System.out.println(Arrays.toString(ja_data)); diff --git a/readers/ITGReader.java b/readers/ITGReader.java index 1b33e64..90ca2e1 100644 --- a/readers/ITGReader.java +++ b/readers/ITGReader.java @@ -135,8 +135,8 @@ public class ITGReader extends Reader{ ImageIO.write(cutImg,"png",output.toFile()); String dataString = readAllBoxes(output); String[] data = dataString.split(Pattern.quote("\n")); - String[] ja_data = data[0].split(Pattern.quote(",")); - String[] en_data = data[2].split(Pattern.quote(",")); + String[] ja_data = parseOutCommas(data[0]).split(Pattern.quote(",")); + String[] en_data = parseOutCommas(data[2]).split(Pattern.quote(",")); trimAllData(ja_data); trimAllData(en_data); System.out.println(Arrays.toString(ja_data)); diff --git a/readers/LoveLiveReader.java b/readers/LoveLiveReader.java index d6d4c79..b6458b5 100644 --- a/readers/LoveLiveReader.java +++ b/readers/LoveLiveReader.java @@ -226,8 +226,8 @@ public class LoveLiveReader extends Reader{ ImageIO.write(cutImg,"png",output.toFile()); String dataString = readAllBoxes(output); String[] data = dataString.split(Pattern.quote("\n")); - String[] ja_data = data[0].split(Pattern.quote(",")); - String[] en_data = data[2].split(Pattern.quote(",")); + String[] ja_data = parseOutCommas(data[0]).split(Pattern.quote(",")); + String[] en_data = parseOutCommas(data[2]).split(Pattern.quote(",")); trimAllData(ja_data); trimAllData(en_data); System.out.println(Arrays.toString(ja_data)); diff --git a/readers/PopnReader.java b/readers/PopnReader.java index 6dc712f..1f31aff 100644 --- a/readers/PopnReader.java +++ b/readers/PopnReader.java @@ -171,8 +171,8 @@ public class PopnReader extends Reader{ ImageIO.write(cutImg,"png",output.toFile()); String dataString = readAllBoxes(output); String[] data = dataString.split(Pattern.quote("\n")); - String[] ja_data = data[0].split(Pattern.quote(",")); - String[] en_data = data[2].split(Pattern.quote(",")); + String[] ja_data = parseOutCommas(data[0]).split(Pattern.quote(",")); + String[] en_data = parseOutCommas(data[2]).split(Pattern.quote(",")); trimAllData(ja_data); trimAllData(en_data); System.out.println(Arrays.toString(ja_data)); diff --git a/readers/Reader.java b/readers/Reader.java index 2d015cf..07d600c 100644 --- a/readers/Reader.java +++ b/readers/Reader.java @@ -35,6 +35,26 @@ public abstract class Reader{ protected void init() { sig_data = new String[readRegions.size()]; } + String parseOutCommas(String str) { + StringBuilder sb = new StringBuilder(); + boolean insideStr = false; + for (int i=0;i0) { + if (str.charAt(i)=='\''&&str.charAt(i-1)!='\\') { + insideStr=!insideStr; + } + } else + if (str.charAt(i)=='\'') { + insideStr=!insideStr; + } + if (insideStr&&str.charAt(i)==',') { + sb.append('،'); + } else { + sb.append(str.charAt(i)); + } + } + return sb.toString(); + } String readAllBoxes(Path img) { try { Process p = Runtime.getRuntime().exec(new String[]{"python3","runocr.py","ja",img.toAbsolutePath().toString()}); @@ -69,7 +89,7 @@ public abstract class Reader{ for (int i=0;i=spacing&&midpoint<=spacing+readRegions.get(j).h+REGION_PADDING /*&&accuracy[j]=spacing&&midpoint<=spacing+readRegions.get(j).h+REGION_PADDING &&accuracy[j] data; try { diff --git a/sub.png b/sub.png index 04bb6eb..83bd239 100644 Binary files a/sub.png and b/sub.png differ diff --git a/test.png b/test.png index baed8e5..b6a6c6e 100644 Binary files a/test.png and b/test.png differ