Пример #1
0
    private void DetectTangram()
    {
        string[] classifiers = { Secrets.TANGRAM_CUSTOM_CLASSIFICATOR };

        //  Classify image using image path
        if (!_visualRecognitionTangram.Classify((ClassifiedImages response, Dictionary <string, object> customData) =>
        {
            Debug.Log(customData["json"]);
            ClassifyResponse r = JsonUtility.FromJson <ClassifyResponse>(customData["json"].ToString());
            scroll.AddContent(r.ToString().Split('\n'));
            scrollButton.ShowPanel();
        }, OnFail, GetFilePath(), null, classifiers, 0.0f))
        {
            Debug.Log("Classify image failed!");
            scroll.AddContent(new string[] { "Classify image failed!" });
            scrollButton.ShowPanel();
        }
    }
Пример #2
0
    public void AnswerQuestion()
    {
        Question q = questions[questionPointer];

        buttonAnswer.interactable = false;
        if (!Main.AnswerQuiz((ClassifiedImages response, Dictionary <string, object> customData) => {
            Debug.Log(customData["json"]);
            ClassifyResponse r = JsonUtility.FromJson <ClassifyResponse>(customData["json"].ToString());

            string @class = r.images[0].classifiers[0].classes[0].@class;
            bool correct = false;
            foreach (string a in q.answers)
            {
                Debug.Log(a + " - " + @class + " = " + a.Equals(@class, System.StringComparison.CurrentCultureIgnoreCase));
                if (a.Equals(@class, System.StringComparison.CurrentCultureIgnoreCase))
                {
                    correct = true;
                    break;
                }
            }

            if (correct)
            {
                score += q.score;
                Modal.ShowModal("Right answer!\n\n" + r);
            }
            else
            {
                Modal.ShowModal("Wrong answer!\n\n" + r);
            }
            questionPointer++;
            NextQuestion();
        }, (RESTConnector.Error error, Dictionary <string, object> customData) => {
            Modal.ShowModal("error while querying watson: " + error.ErrorMessage);
            buttonAnswer.interactable = true;
        }))
        {
            Modal.ShowModal("Classify image failed!");
            buttonAnswer.interactable = true;
        }
    }
Пример #3
0
        internal static async Task Execute(Client client)
        {
            ClassifyCommand command = new ClassifyCommand
            {
                Base64Xml = @"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjxJbnZvaWNlIHhtbG5zOmNh
Yz0idXJuOm9hc2lzOm5hbWVzOnNwZWNpZmljYXRpb246dWJsOnNjaGVtYTp4c2Q6Q29tbW9uQWdn
cmVnYXRlQ29tcG9uZW50cy0yIg0KICAgICAgICAgeG1sbnM6Y2JjPSJ1cm46b2FzaXM6bmFtZXM6
c3BlY2lmaWNhdGlvbjp1Ymw6c2NoZW1hOnhzZDpDb21tb25CYXNpY0NvbXBvbmVudHMtMiINCiAg
ICAgICAgIHhtbG5zOnFkdD0idXJuOm9hc2lzOm5hbWVzOnNwZWNpZmljYXRpb246dWJsOnNjaGVt
YTp4c2Q6UXVhbGlmaWVkRGF0YVR5cGVzLTIiDQogICAgICAgICB4bWxuczp1ZHQ9InVybjpvYXNp
czpuYW1lczpzcGVjaWZpY2F0aW9uOnVibDpzY2hlbWE6eHNkOlVucXVhbGlmaWVkRGF0YVR5cGVz
LTIiDQogICAgICAgICB4bWxuczpjY3RzPSJ1cm46dW46dW5lY2U6dW5jZWZhY3Q6ZG9jdW1lbnRh
dGlvbjoyIg0KICAgICAgICAgeG1sbnM9InVybjpvYXNpczpuYW1lczpzcGVjaWZpY2F0aW9uOnVi
bDpzY2hlbWE6eHNkOkludm9pY2UtMiI+DQoJPGNiYzpVQkxWZXJzaW9uSUQ+Mi4xPC9jYmM6VUJM
VmVyc2lvbklEPg0KCTxjYmM6Q3VzdG9taXphdGlvbklEPnVybjpjZW4uZXU6ZW4xNjkzMToyMDE3
I2NvbXBsaWFudCN1cm46ZmRjOm5lbi5ubDpubGNpdXM6djEuMDwvY2JjOkN1c3RvbWl6YXRpb25J
RD4NCgk8Y2JjOlByb2ZpbGVJRD51cm46ZmRjOnBlcHBvbC5ldToyMDE3OnBvYWNjOmJpbGxpbmc6
MDE6MS4wPC9jYmM6UHJvZmlsZUlEPg0KCTxjYmM6SUQ+MTIxMTUxMTg8L2NiYzpJRD4NCgk8Y2Jj
Oklzc3VlRGF0ZT4yMDE1LTAxLTA5PC9jYmM6SXNzdWVEYXRlPg0KCTxjYmM6RHVlRGF0ZT4yMDE1
LTAxLTA5PC9jYmM6RHVlRGF0ZT4NCgk8Y2JjOkludm9pY2VUeXBlQ29kZT4zODA8L2NiYzpJbnZv
aWNlVHlwZUNvZGU+DQoJPGNiYzpOb3RlPkFsbGUgbGV2ZXJpbmdlbiB6aWpuIGZyYW5jby4gQWxs
ZSBwcmlqemVuIHppam4gaW5jbC4gQlRXLiBCZXRhbGluZ3N0ZXJtaWpuOiAxNCBkYWdlbiBuZXR0
by4gUHJpanN3aWp6aWdpbmdlbiB2b29yYmVob3VkZW4uIE9wIGFsIG9uemUNCiAgICBhYW5iaWVk
aW5nZW4sIGxldmVyaW5nZW4gZW4gb3ZlcmVlbmtvbXN0ZW4gemlqbiB2YW4gdG9lcGFzc2luZyBp
biBkZSBhbGdlbWVuZSB2ZXJrb29wIGVuIGxldmVyaW5nc3Zvb3J3YWFyZGVuLiBHZWRlcG9uZWVy
ZCBiaWogZGUgSy52LksuIHRlDQogICAgQW1zdGVyZGFtIDI1LTA0LSc4NSMjRGVsaXZlcnkgdGVy
bXM8L2NiYzpOb3RlPg0KCTxjYmM6RG9jdW1lbnRDdXJyZW5jeUNvZGU+RVVSPC9jYmM6RG9jdW1l
bnRDdXJyZW5jeUNvZGU+DQoJPGNiYzpCdXllclJlZmVyZW5jZT40NzgwNjwvY2JjOkJ1eWVyUmVm
ZXJlbmNlPg0KCTxjYWM6T3JkZXJSZWZlcmVuY2U+DQoJCTxjYmM6SUQ+NDc4MDY8L2NiYzpJRD4N
Cgk8L2NhYzpPcmRlclJlZmVyZW5jZT4NCg0KCTxjYWM6QWNjb3VudGluZ1N1cHBsaWVyUGFydHk+
DQoJCTxjYWM6UGFydHk+DQoJCQk8Y2FjOlBhcnR5TmFtZT4NCgkJCQk8Y2JjOk5hbWU+RGllc2lz
PC9jYmM6TmFtZT4NCgkJCTwvY2FjOlBhcnR5TmFtZT4NCgkJCTxjYWM6UG9zdGFsQWRkcmVzcz4N
CgkJCQk8Y2JjOlN0cmVldE5hbWU+T29ydGxhYW4gMjwvY2JjOlN0cmVldE5hbWU+DQoJCQkJPGNi
YzpDaXR5TmFtZT5FZGU8L2NiYzpDaXR5TmFtZT4NCgkJCQk8Y2JjOlBvc3RhbFpvbmU+NjcxNldE
PC9jYmM6UG9zdGFsWm9uZT4NCgkJCQk8Y2FjOkNvdW50cnk+DQoJCQkJCTxjYmM6SWRlbnRpZmlj
YXRpb25Db2RlPk5MPC9jYmM6SWRlbnRpZmljYXRpb25Db2RlPg0KCQkJCTwvY2FjOkNvdW50cnk+
DQoJCQk8L2NhYzpQb3N0YWxBZGRyZXNzPg0KCQkJPGNhYzpQYXJ0eVRheFNjaGVtZT4NCgkJCQk8
Y2JjOkNvbXBhbnlJRD5OTDExMTEuMTEuMTExLkIuMDE8L2NiYzpDb21wYW55SUQ+DQoJCQkJPGNh
YzpUYXhTY2hlbWU+DQoJCQkJCTxjYmM6SUQ+VkFUPC9jYmM6SUQ+DQoJCQkJPC9jYWM6VGF4U2No
ZW1lPg0KCQkJPC9jYWM6UGFydHlUYXhTY2hlbWU+DQoJCQk8Y2FjOlBhcnR5TGVnYWxFbnRpdHk+
DQoJCQkJPGNiYzpDb21wYW55SUQgc2NoZW1lSUQ9IjAxMDYiPjM0MjM2NTYwPC9jYmM6Q29tcGFu
eUlEPg0KCQkJPC9jYWM6UGFydHlMZWdhbEVudGl0eT4NCgkJPC9jYWM6UGFydHk+DQoJPC9jYWM6
QWNjb3VudGluZ1N1cHBsaWVyUGFydHk+DQoJPGNhYzpBY2NvdW50aW5nQ3VzdG9tZXJQYXJ0eT4N
CgkJPGNhYzpQYXJ0eT4NCgkJCTxjYWM6UGFydHlOYW1lPg0KCQkJCTxjYmM6TmFtZT5FYXN5IFN5
c3RlbXM8L2NiYzpOYW1lPg0KCQkJPC9jYWM6UGFydHlOYW1lPg0KCQkJPGNhYzpQb3N0YWxBZGRy
ZXNzPg0KCQkJCTxjYmM6U3RyZWV0TmFtZT5Pb3J0bGFhbiAyPC9jYmM6U3RyZWV0TmFtZT4NCgkJ
CQk8Y2JjOkNpdHlOYW1lPkVkZTwvY2JjOkNpdHlOYW1lPg0KCQkJCTxjYmM6UG9zdGFsWm9uZT42
NzE2V0Q8L2NiYzpQb3N0YWxab25lPg0KCQkJCTxjYWM6Q291bnRyeT4NCgkJCQkJPGNiYzpJZGVu
dGlmaWNhdGlvbkNvZGU+Tkw8L2NiYzpJZGVudGlmaWNhdGlvbkNvZGU+DQoJCQkJPC9jYWM6Q291
bnRyeT4NCgkJCTwvY2FjOlBvc3RhbEFkZHJlc3M+DQoJCQk8Y2FjOlBhcnR5TGVnYWxFbnRpdHk+
DQoJCQkJPGNiYzpSZWdpc3RyYXRpb25OYW1lPkVhc3kgc3lzdGVtcyBCVjwvY2JjOlJlZ2lzdHJh
dGlvbk5hbWU+DQoJCQkJPGNiYzpDb21wYW55SUQgc2NoZW1lSUQ9IjAxMDYiPjA5MTYwOTQ4PC9j
YmM6Q29tcGFueUlEPg0KCQkJPC9jYWM6UGFydHlMZWdhbEVudGl0eT4NCgkJPC9jYWM6UGFydHk+
DQoJPC9jYWM6QWNjb3VudGluZ0N1c3RvbWVyUGFydHk+DQoJPGNhYzpQYXltZW50TWVhbnM+DQoJ
CTxjYmM6UGF5bWVudE1lYW5zQ29kZT4zMDwvY2JjOlBheW1lbnRNZWFuc0NvZGU+DQoJCTxjYmM6
UGF5bWVudElEPkRlYi4gMTAyMDIgLyBGYWN0LiAxMjExNTExODwvY2JjOlBheW1lbnRJRD4NCgkJ
PGNhYzpQYXllZUZpbmFuY2lhbEFjY291bnQ+DQoJCQk8Y2JjOklEPk5MMTEgQkFOSyAxMTExMTEx
MTExPC9jYmM6SUQ+DQoJCTwvY2FjOlBheWVlRmluYW5jaWFsQWNjb3VudD4NCgk8L2NhYzpQYXlt
ZW50TWVhbnM+DQoJPGNhYzpQYXltZW50TWVhbnM+DQoJCTxjYmM6UGF5bWVudE1lYW5zQ29kZT4z
MDwvY2JjOlBheW1lbnRNZWFuc0NvZGU+DQoJCTxjYmM6UGF5bWVudElEPkRlYi4gMTAyMDIgLyBG
YWN0LiAxMjExNTExODwvY2JjOlBheW1lbnRJRD4NCgkJPGNhYzpQYXllZUZpbmFuY2lhbEFjY291
bnQ+DQoJCQk8Y2JjOklEPk5MMTEgQkFOSyAxMTExMTExMTEyPC9jYmM6SUQ+DQoJCTwvY2FjOlBh
eWVlRmluYW5jaWFsQWNjb3VudD4NCgk8L2NhYzpQYXltZW50TWVhbnM+DQoJPGNhYzpUYXhUb3Rh
bD4NCgkJPGNiYzpUYXhBbW91bnQgY3VycmVuY3lJRD0iRVVSIj4yNy4wMDwvY2JjOlRheEFtb3Vu
dD4NCgkJPGNhYzpUYXhTdWJ0b3RhbD4NCgkJCTxjYmM6VGF4YWJsZUFtb3VudCBjdXJyZW5jeUlE
PSJFVVIiPjEwMC4wMDwvY2JjOlRheGFibGVBbW91bnQ+DQoJCQk8Y2JjOlRheEFtb3VudCBjdXJy
ZW5jeUlEPSJFVVIiPjIxLjAwPC9jYmM6VGF4QW1vdW50Pg0KCQkJPGNhYzpUYXhDYXRlZ29yeT4N
CgkJCQk8Y2JjOklEPlM8L2NiYzpJRD4NCgkJCQk8Y2JjOlBlcmNlbnQ+MjE8L2NiYzpQZXJjZW50
Pg0KCQkJCTxjYWM6VGF4U2NoZW1lPg0KCQkJCQk8Y2JjOklEPlZBVDwvY2JjOklEPg0KCQkJCTwv
Y2FjOlRheFNjaGVtZT4NCgkJCTwvY2FjOlRheENhdGVnb3J5Pg0KCQk8L2NhYzpUYXhTdWJ0b3Rh
bD4NCgkJPGNhYzpUYXhTdWJ0b3RhbD4NCgkJCTxjYmM6VGF4YWJsZUFtb3VudCBjdXJyZW5jeUlE
PSJFVVIiPjEwMC4wMDwvY2JjOlRheGFibGVBbW91bnQ+DQoJCQk8Y2JjOlRheEFtb3VudCBjdXJy
ZW5jeUlEPSJFVVIiPjYuMDA8L2NiYzpUYXhBbW91bnQ+DQoJCQk8Y2FjOlRheENhdGVnb3J5Pg0K
CQkJCTxjYmM6SUQ+UzwvY2JjOklEPg0KCQkJCTxjYmM6UGVyY2VudD42PC9jYmM6UGVyY2VudD4N
CgkJCQk8Y2FjOlRheFNjaGVtZT4NCgkJCQkJPGNiYzpJRD5WQVQ8L2NiYzpJRD4NCgkJCQk8L2Nh
YzpUYXhTY2hlbWU+DQoJCQk8L2NhYzpUYXhDYXRlZ29yeT4NCgkJPC9jYWM6VGF4U3VidG90YWw+
DQoJPC9jYWM6VGF4VG90YWw+DQoJPGNhYzpMZWdhbE1vbmV0YXJ5VG90YWw+DQoJCTxjYmM6TGlu
ZUV4dGVuc2lvbkFtb3VudCBjdXJyZW5jeUlEPSJFVVIiPjIwMC4wMDwvY2JjOkxpbmVFeHRlbnNp
b25BbW91bnQ+DQoJCTxjYmM6VGF4RXhjbHVzaXZlQW1vdW50IGN1cnJlbmN5SUQ9IkVVUiI+MjAw
LjAwPC9jYmM6VGF4RXhjbHVzaXZlQW1vdW50Pg0KCQk8Y2JjOlRheEluY2x1c2l2ZUFtb3VudCBj
dXJyZW5jeUlEPSJFVVIiPjIyNy4wMDwvY2JjOlRheEluY2x1c2l2ZUFtb3VudD4NCgkJPGNiYzpQ
YXlhYmxlQW1vdW50IGN1cnJlbmN5SUQ9IkVVUiI+MjI3LjAwPC9jYmM6UGF5YWJsZUFtb3VudD4N
Cgk8L2NhYzpMZWdhbE1vbmV0YXJ5VG90YWw+DQoJPGNhYzpJbnZvaWNlTGluZT4NCgkJPGNiYzpJ
RD4xPC9jYmM6SUQ+DQoJCTxjYmM6SW52b2ljZWRRdWFudGl0eSB1bml0Q29kZT0iQzYyIj40PC9j
YmM6SW52b2ljZWRRdWFudGl0eT4NCgkJPGNiYzpMaW5lRXh0ZW5zaW9uQW1vdW50IGN1cnJlbmN5
SUQ9IkVVUiI+MjAwLjAwPC9jYmM6TGluZUV4dGVuc2lvbkFtb3VudD4NCgkJPGNhYzpJdGVtPg0K
CQkJPGNiYzpOYW1lPlNpbXBsZXJJbnZvaWNpbmcgdGVzdCBpbnZvaWNlPC9jYmM6TmFtZT4NCgkJ
CTxjYWM6U2VsbGVyc0l0ZW1JZGVudGlmaWNhdGlvbj4NCgkJCQk8Y2JjOklEPjE2NjAyMjwvY2Jj
OklEPg0KCQkJPC9jYWM6U2VsbGVyc0l0ZW1JZGVudGlmaWNhdGlvbj4NCgkJCTxjYWM6Q2xhc3Np
ZmllZFRheENhdGVnb3J5Pg0KCQkJCTxjYmM6SUQ+UzwvY2JjOklEPg0KCQkJCTxjYmM6UGVyY2Vu
dD4yMTwvY2JjOlBlcmNlbnQ+DQoJCQkJPGNhYzpUYXhTY2hlbWU+DQoJCQkJCTxjYmM6SUQ+VkFU
PC9jYmM6SUQ+DQoJCQkJPC9jYWM6VGF4U2NoZW1lPg0KCQkJPC9jYWM6Q2xhc3NpZmllZFRheENh
dGVnb3J5Pg0KCQk8L2NhYzpJdGVtPg0KCQk8Y2FjOlByaWNlPg0KCQkJPGNiYzpQcmljZUFtb3Vu
dCBjdXJyZW5jeUlEPSJFVVIiPjUwLjAwPC9jYmM6UHJpY2VBbW91bnQ+DQoJCTwvY2FjOlByaWNl
Pg0KCTwvY2FjOkludm9pY2VMaW5lPg0KCTxjYWM6SW52b2ljZUxpbmU+DQoJCTxjYmM6SUQ+Mjwv
Y2JjOklEPg0KCQk8Y2JjOkludm9pY2VkUXVhbnRpdHkgdW5pdENvZGU9IkM2MiI+MTwvY2JjOklu
dm9pY2VkUXVhbnRpdHk+DQoJCTxjYmM6TGluZUV4dGVuc2lvbkFtb3VudCBjdXJyZW5jeUlEPSJF
VVIiPjEwMC4wMDwvY2JjOkxpbmVFeHRlbnNpb25BbW91bnQ+DQoJCTxjYWM6SXRlbT4NCgkJCTxj
YmM6TmFtZT5UZXN0aW5nIHByb2NlZHVyZXM8L2NiYzpOYW1lPg0KCQkJPGNhYzpTZWxsZXJzSXRl
bUlkZW50aWZpY2F0aW9uPg0KCQkJCTxjYmM6SUQ+NjYxODEzPC9jYmM6SUQ+DQoJCQk8L2NhYzpT
ZWxsZXJzSXRlbUlkZW50aWZpY2F0aW9uPg0KCQkJPGNhYzpDbGFzc2lmaWVkVGF4Q2F0ZWdvcnk+
DQoJCQkJPGNiYzpJRD5TPC9jYmM6SUQ+DQoJCQkJPGNiYzpQZXJjZW50PjY8L2NiYzpQZXJjZW50
Pg0KCQkJCTxjYWM6VGF4U2NoZW1lPg0KCQkJCQk8Y2JjOklEPlZBVDwvY2JjOklEPg0KCQkJCTwv
Y2FjOlRheFNjaGVtZT4NCgkJCTwvY2FjOkNsYXNzaWZpZWRUYXhDYXRlZ29yeT4NCgkJPC9jYWM6
SXRlbT4NCgkJPGNhYzpQcmljZT4NCgkJCTxjYmM6UHJpY2VBbW91bnQgY3VycmVuY3lJRD0iRVVS
Ij4xMDAuMDA8L2NiYzpQcmljZUFtb3VudD4NCgkJPC9jYWM6UHJpY2U+DQoJPC9jYWM6SW52b2lj
ZUxpbmU+DQoJPGNhYzpJbnZvaWNlTGluZT4NCgkJPGNiYzpJRD4zPC9jYmM6SUQ+DQoJCTxjYmM6
SW52b2ljZWRRdWFudGl0eSB1bml0Q29kZT0iQzYyIj4tMTwvY2JjOkludm9pY2VkUXVhbnRpdHk+
DQoJCTxjYmM6TGluZUV4dGVuc2lvbkFtb3VudCBjdXJyZW5jeUlEPSJFVVIiPi0xMDAuMDA8L2Ni
YzpMaW5lRXh0ZW5zaW9uQW1vdW50Pg0KCQk8Y2FjOkl0ZW0+DQoJCQk8Y2JjOk5hbWU+UHJldmlv
dXMgVGVzdCBJbnZvaWNlIHJldHVybmVkPC9jYmM6TmFtZT4NCgkJCTxjYWM6U2VsbGVyc0l0ZW1J
ZGVudGlmaWNhdGlvbj4NCgkJCQk8Y2JjOklEPjQzODE0NjwvY2JjOklEPg0KCQkJPC9jYWM6U2Vs
bGVyc0l0ZW1JZGVudGlmaWNhdGlvbj4NCgkJCTxjYWM6Q2xhc3NpZmllZFRheENhdGVnb3J5Pg0K
CQkJCTxjYmM6SUQ+UzwvY2JjOklEPg0KCQkJCTxjYmM6UGVyY2VudD4yMTwvY2JjOlBlcmNlbnQ+
DQoJCQkJPGNhYzpUYXhTY2hlbWU+DQoJCQkJCTxjYmM6SUQ+VkFUPC9jYmM6SUQ+DQoJCQkJPC9j
YWM6VGF4U2NoZW1lPg0KCQkJPC9jYWM6Q2xhc3NpZmllZFRheENhdGVnb3J5Pg0KCQk8L2NhYzpJ
dGVtPg0KCQk8Y2FjOlByaWNlPg0KCQkJPGNiYzpQcmljZUFtb3VudCBjdXJyZW5jeUlEPSJFVVIi
PjEwMC4wMDwvY2JjOlByaWNlQW1vdW50Pg0KCQk8L2NhYzpQcmljZT4NCgk8L2NhYzpJbnZvaWNl
TGluZT4NCjwvSW52b2ljZT4="
            };
            ClassifyResponse result = await client.PeppolDocuments.ClassifyAsync(command);

            Console.WriteLine($"Name: {result.Name}");
        }